KR102452629B1 - 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 - Google Patents
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 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B5/00—ICT specially adapted for modelling or simulations in systems biology, e.g. gene-regulatory networks, protein interaction networks or metabolic networks
- G16B5/10—Boolean models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Physiology (AREA)
- General Physics & Mathematics (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
부울리언 네트워크 초기상태로부터, 상기 초기상태가 포함되지 않은 원하는 제1끌개유역의 바운더리 상태를 결정하는 단계, 및 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계를 포함하며, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는, 부울리언 네트워크의 제어노드 결정방법을 공개한다.Determining a boundary state of a desired first attraction basin not including the initial state from the initial state of the Boolean network, and comparing the boundary state and the initial state among the nodes of the Boolean network with each other determining nodes having a state as a control node, wherein the boundary state is Hamming distances between the initial state and respective states belonging to the first attracting basin among states belonging to the first attracting basin Discloses a method for determining a control node of a Boolean network, characterized in that it has a minimum Hamming distance.
Description
본 발명은 최소한의 일시적 섭동을 사용하여 부울리언 네트워크의 상태를 원하는 끌개의 끌개유역의 경계 상태로 보내는 제어기술에 관한 것으로서, 컴퓨팅 장치에 의해 실행될 수 있는 기술에 관한 것이다.The present invention relates to a control technique for sending the state of a Boolean network to the boundary state of a desired attractor basin using minimal temporal perturbation, and relates to a technique executable by a computing device.
원하지 않는 초기상태(ex: cancer state)에 있는 세포의 상태를 원하는 상태(ex: cell death state)로 변화시키기 위해서 한 종류의 약물 또는 여러 종류의 약물의 조합을 세포에 투여할 수 있다. 이때 더 적은 종류의 약물을 투약함으로써 동일한 효과를 얻을 수 있다면 비용적 측면 및 약물 부작용 최소화의 측면에서 더 바람직할 수 있다. In order to change the state of a cell in an undesirable initial state (ex: cancer state) to a desired state (ex: cell death state), one type of drug or a combination of several types of drugs may be administered to the cells. In this case, if the same effect can be obtained by administering fewer types of drugs, it may be more preferable in terms of cost and minimizing side effects of drugs.
세포의 표현형의 변화는 생체분자 신호처리 네트워크에 의해 모델링되어 분석될 수 있다. 그리고 생체분자 신호처리 네트워크는 부울리언 네트워크로 모델링될 수도 있다. 부울리언 네트워크의 각 노드는 생체분자 신호처리 네트워크가 나타내는 각 분자에 대응할 수 있다. 대한민국 특허공개번호 10-2014-0032070 에는 부울리언 네트워크 및 상태천이 다이어그램(state transition diagram)에 대한 내용이 공개되어 있다. Changes in the phenotype of cells can be modeled and analyzed by biomolecular signaling networks. In addition, the biomolecule signal processing network may be modeled as a Boolean network. Each node of the Boolean network may correspond to each molecule represented by the biomolecule signal processing network. Korean Patent Publication No. 10-2014-0032070 discloses a Boolean network and a state transition diagram.
상태천이 다이어그램 및 이와 함께 이용되는 끌개 지형(attractor landscape)이라는 기법과 함께 시스템의 동역학을 한눈에 파악할 수 있는 분석법이다. 상태천이 다이어그램을 이용하면 시스템의 모든 상태천이경로를 파악할 수 있으며, 끌개 지형을 통해 끌개(attractor) 및 그 끌개유역(basin)을 파악할 수 있다. It is an analysis method that can grasp the dynamics of the system at a glance along with a state transition diagram and a technique called an attractor landscape used therewith. By using the state transition diagram, all state transition paths of the system can be identified, and the attractor and its basin can be identified through the attraction topography.
'부울리언 네트워크' 의 특정 끌개의 끌개유역을 찾기 위한 종래기술에서는, 시스템이 가질 수 있는 모든 상태에서, 주어진 갱신규칙을 적용하여 상기 특정 끌개까지의 상태천이경로를 계산하여 상기 특정 끌개로 수렴하는 상태천이경로를 찾는 과정을 이용하여 전체 특정 끌개유역의 상태천이 다이어그램을 얻는다.In the prior art for finding the basin of attraction of a specific attractor of a 'Boolean network', in all possible states of the system, the state transition path to the particular attractor is calculated by applying a given update rule and converges to the particular attractor. By using the process of finding the state transition path, a state transition diagram of the entire specific attracting basin is obtained.
상술한 내용은 본 발명의 이해를 돕기 위하여 본 발명의 발명자가 알고 있거나 연구한 내용을 바탕으로 기술한 것이다. 따라서 상술한 내용이 본 발명의 특허출원 이전에 불특정인에게 공개된 것이 당연한 것으로 간주하여서는 안 된다.The above description is based on the contents known or studied by the inventor of the present invention in order to help the understanding of the present invention. Therefore, it should not be taken for granted that the above-described contents were disclosed to an unspecified person prior to the patent application of the present invention.
본 발명에서는 원하지 않는 초기상태에 있는 세포의 상태를 원하는 상태로 변화시키기 위해서 세포에 투여해야 할 약물의 조합을 결정할 수 있도록 하는 기술을 제공하고자 한다. An object of the present invention is to provide a technology that allows a combination of drugs to be administered to cells to be determined in order to change the state of a cell in an undesired initial state to a desired state.
본 발명에서는 세포의 상태를 변화시키기 위하여 제어해야 하는 단백질을 결정하는 기술을 제공하고자 한다.An object of the present invention is to provide a technique for determining a protein to be controlled in order to change the state of a cell.
본 발명에서는 세포의 동역학 시스템을 모델링한 생체분자 신호처리 네트워크를 부울리언 네트워크로 모델링하였을 때에, 부울리언 네트워크의 원하지 않는 초기상태를 원하는 상태로 변화시키기 위하여 그 상태를 제어해야 하는 노드를 결정하는 기술을 제공하고자 한다. 이때 상기 부울리언 네트워크의 각 노드는 세포의 단백질을 나타낼 수 있다.In the present invention, when a biomolecule signal processing network modeling a dynamic system of a cell is modeled as a Boolean network, a technique for determining a node to control the state to change an undesired initial state of the Boolean network into a desired state would like to provide In this case, each node of the Boolean network may represent a protein of a cell.
본 발명에서 사용되는 일부 용어들은 아래와 같이 정의될 수 있다. Some terms used in the present invention may be defined as follows.
- 상태(state): 부울리언 네트워크의 경우 각 노드는 0 또는 1의 값을 갖는데, 부울리언 네트워크의 '상태'는 모든 노드(node) 값의 순서쌍으로 표현될 수 있다. 이에 따르면, 부울리언 네트워크의 총 노드 수가 N개일 때 가능한 상태의 수는 2N개이다. 부울리언 네트워크는 특정 순간에 특정 상태를 가질 수 있으며, 시간이 흐름에 따라 상기 부울리언 네트워크의 상태는 변화할 수도 있고 그대로 남아 있을 수도 있다.- State: In the case of a Boolean network, each node has a value of 0 or 1. The 'state' of a Boolean network can be expressed as an ordered pair of values of all nodes. According to this, when the total number of nodes in the Boolean network is N, the number of possible states is 2 N. A Boolean network may have a specific state at a specific moment, and as time passes, the state of the Boolean network may change or remain the same.
- 끌개(attractor): 부울리언 네트워크의 상태들 중 시간이 지나도 반복되는 상태의 집합을 '끌개'라고 지칭할 수 있다. 상기 끌개는 생명 시스템의 경우 암 또는 세포 사멸과 같은 상태를 의미하는 '표현형'에 대응될 수 있다.- Attractor: A set of states that repeat over time among states of a Boolean network can be referred to as an 'attractor'. The attraction may correspond to a 'phenotype', which means a condition such as cancer or apoptosis in the case of a living system.
- 상태천이경로(state transition trajectory): 외부 간섭 없이 부울리언 네트워크의 상태가 시간이 흐르면 변해가는 경로를 '상태천이경로'라고 지칭할 수 있다. 상태천이경로를 도식화하여 표현하는 경우, 부울리언 네트워크의 특정 과거 시점에서의 상태로부터 특정 미래 시점에서의 상태로 화살표를 그려 표현할 수 있다. 한 개의 상태천이경로는 시간에 따라 변화하는 다수의 상태들과 상기 다수의 상태들 간을 연결하는 화살표들로 표현될 수 있다.- State transition trajectory: A path in which the state of a Boolean network changes over time without external interference can be referred to as a 'state transition path'. When the state transition path is represented by a diagram, an arrow can be drawn from the state at a specific past point in the Boolean network to the state at a specific future point in time. One state transition path may be represented by a plurality of states that change with time and arrows connecting the plurality of states.
- 끌개유역(basin): 특정 끌개로 향하는 모든 상태천이경로 상에 포함되는 모든 상태들로 이루어지는 집합을 '끌개유역'이라고 지칭할 수 있다. 특정 끌개유역에 포함된 모든 상태는 시간이 흐르면 상기 특정 끌개유역의 끌개 상태로 수렴될 수 있다.- Basin of Attraction: A set consisting of all states included in all state transition paths toward a specific attraction can be referred to as a 'basin of attraction'. All the states included in the specific attracting basin may converge to the attracting state of the specific attracting basin over time.
- 터미널 상태(terminal state): 주어진 상태천이경로 상에서 과거상태를 갖지 않는 상태를 '터미널 상태'라고 지칭할 수 있다. 화살표들로 표시된 주어진 상태천이경로에서, 어떠한 화살표도 향하지 않는 상태를 상기 터미널 상태로 간주할 수도 있다. 터미널 상태에 연결된 화살표는 터미널 상태로부터 출발하게 된다.- Terminal state: A state that does not have a past state on a given state transition path can be referred to as a 'terminal state'. In a given state transition path indicated by arrows, a state in which no arrows point may be regarded as the terminal state. The arrow connected to the terminal state starts from the 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이다. 본 발명의 일 실시예에서 상기 해밍거리는 일시적인 제어 시 필요한 제어노드의 개수인 것으로 간주될 수 있다.- Hamming distance: The number of nodes having different values between two states may be referred to as a 'Hamming distance' between the two states. For example, when the total number of nodes in the Boolean network is N, the number of nodes whose values are different from each other when comparing the first and second states among states specified by a combination of values of the N nodes It may be referred to as a Hamming distance between the first state and the second state. As a specific example, when N=3, the first state is '101' and the second state is '100', the Hamming distance between the first state and the second state is 1. As another example, when N=3, the first state is '101' and the second state is '010', the Hamming distance between the first state and the second state is three. In an embodiment of the present invention, the Hamming distance may be regarded as the number of control nodes required for temporary control.
- 바운더리(boundary): 원하는 제1끌개유역[DB]의 상태들 중에서, 원하지 않는 제2끌개유역[UB]에 포함된 원하지 않는 제2상태[US]로부터 최단 해밍거리에 있는 상태를 '바운더리 상태', 또는 '원하지 않는 제2상태[US]로부터의 원하는 제1끌개유역[DB]의 바운더리 상태'라고 지칭할 수 있다.상기 원하지 않는 제2상태[US]로부터의 원하는 제1끌개유역[DB]의 바운더리 상태는 한 개 또는 복수 개가 존재할 수 있다. 상기 바운더리 상태의 집합을 '바운더리' 또는 '원하지 않는 제2상태[US]로부터의 원하는 제1끌개유역[DB]의 바운더리' 라고 지칭할 수 있다.-Boundary: Among the states of the desired first attracting basin [DB], the state that is the shortest Hamming distance from the unwanted second state [US] included in the unwanted second attracting basin [UB] is the 'boundary state' ', or 'the boundary state of the desired first attractor basin [DB] from the second undesired state [US]'. ] may exist one or more boundary states. The set of boundary states may be referred to as a 'boundary' or a 'boundary of the first desired attraction basin [DB] from the undesired second state [US]'.
본 명세서에 기재된 [] 안에 표시된 'D'는 '원하는(desired)'을 의미하는 것일 수 있고, 'U'는 '원하지 않는(undesired)'를 의미하는 것일 수 있고, 'B'는 '끌개유역(basin)'을 의미하는 것일 수 있고, 'S'는 '상태(state)'를 의미할 수 있다.'D' indicated in [] as described herein may mean 'desired', 'U' may mean 'undesired', and 'B' may mean 'attractive watershed' (basin)' may mean 'S' may mean 'state'.
- 제어목적: 시스템의 상태를 일시적인 섭동을 통해 원하지 않는 제2상태[US]로부터 원하는 제1끌개로 최적으로 천이시키는 것을 본 발명의 일 실시예에 따른 '제어목적'으로 정의할 수 있다. 여기서 상기 제2상태[US]는, 상기 시스템에 있어서, 원하지 않는 제2끌개의 끌개유역인 제2끌개유역[UB]에 속하는 상태일 수 있다. 그리고 상기 제1끌개는 상기 시스템의 원하는 끌개 상태일 수 있다. 여기서 '최적'으로 천이시킨다는 것은 상기 원하지 않는 제2상태[US]를 상기 원하는 제1끌개유역[DB]의 바운더리로 천이하기 위하여 최소한의 노드의 값을 일시적으로 조절하는 것을 의미할 수 있다. 예컨대 상기 원하는 제1끌개유역[DB]의 바운더리로 천이하기 위하여 최소한 2개의 노드들의 값을 조절해야 하는 경우에 있어서, 상기 2개의 노드들의 값만을 조절한다면 최적으로 천이시키는 것이지만, 3개 이상의 노드들의 값들을 조절한다면 최적으로 천이시키는 것은 아니다.- Control purpose: optimally transitioning the state of the system from the unwanted second state [US] to the desired first attraction through temporary perturbation can be defined as the 'control objective' according to an embodiment of the present invention. Here, the second state [US] may be a state belonging to the second attracting basin [UB], which is an unwanted second attracting basin in the system. And the first attraction may be a desired state of attraction of the system. Here, the 'optimal' transition may mean temporarily adjusting the value of the minimum node in order to transition the unwanted second state [US] to the boundary of the desired first attraction basin [DB]. For example, when it is necessary to adjust the values of at least two nodes in order to transition to the boundary of the desired first attracting basin [DB], if only the values of the two nodes are adjusted, the transition is optimally, but the Adjusting the values does not make an optimal transition.
- 일시적인 섭동(temporary perturbation): 노드의 값을 일시적으로 변경하는 것을 '일시적인 섭동'이라고 지칭할 수 있다. 한 개 이상의 노드의 값을 일시적으로 변경한 이후 섭동을 바로 멈추면, 부울리언 네트워크는 그 고유의 동역학에 따라 상태 변화가 이루어지게 된다. 본 발명의 일 실시예에서는 제어대상이 되는 노드를 일시적으로 섭동하지만, 비교 실시예에서는 제어대상이 되는 노드의 값을 강제적으로 지속적으로 고정하는 방식으로 섭동할 수 있다. 이러한 비교 실시예에 따르면 특정 노드의 값이 강제적으로 지속 고정되므로 부울리언 네트워크가 그 고유의 동역학에 따라 행동하지 않을 수 있다. - Temporary perturbation: Temporarily changing the value of a node can be referred to as 'temporary perturbation'. If the perturbation is stopped immediately after temporarily changing the values of one or more nodes, the state change of the Boolean network is made according to its inherent dynamics. In an embodiment of the present invention, the node to be controlled is temporarily perturbed, but in the comparative embodiment, the value of the node to be controlled may be perturbed in a way that forcibly and continuously fixes the value. According to this comparative example, since the value of a specific node is forcibly fixed, the Boolean network may not behave according to its own dynamics.
- 초기상태(initial state): 본 발명에서 일시적인 섭동의 제공이 필요한 또는 일시적인 섭동을 가해야 하는 상태로서, 예컨대 원하지 않는 제2끌개유역[UB]에 속해 있는 원하지 않는 제2상태[US]를 '초기상태'라고 지칭할 수도 있다. 이에 따르면 상기 바운더리 상태는 '초기상태로부터의 원하는 제1끌개유역[DB]의 바운더리 상태'라고 지칭할 수도 있다. -Initial state: In the present invention, as a state in which provision of temporary perturbation is required or a temporary perturbation must be applied, for example, an unwanted second state [US] belonging to the unwanted second attraction basin [UB] is ' It can also be referred to as 'initial state'. Accordingly, the boundary state may be referred to as 'the boundary state of the desired first attraction basin [DB] from the initial state'.
- 대칭노드: 대칭노드는 두 가지 종류로 분류될 수 있다. 첫째, '구조적 대칭노드'는 네트워크 구조만으로부터 결정되는 대칭노드로서 모든 끌개유역에서 항상 대칭노드이다. 둘째, '동역학적 대칭노드'는 구조적 대칭노드 외에 끌개 별로 동역학적 특성에 따라 나타나게 되는 추가적인 대칭노드이며, 구조적 대칭노드는 끌개유역을 계산하지 않아도 알 수 있지만 동역학적 대칭노드는 특정 끌개유역을 계산한 후에야 알 수 있다.- Symmetric nodes: Symmetric nodes can be classified into two types. First, a 'structural symmetric node' is a symmetric node determined only from the network structure, and is always a symmetric node in all the attraction basins. Second, the 'dynamically symmetric node' is an additional symmetric node that appears according to the dynamic characteristics of each attraction in addition to the structural symmetric node. Structural symmetric nodes can be known without calculating the basin of attraction, but the dynamic symmetric node calculates a specific basin of attraction. You can only find out after doing it.
네트워크 구조에서 나가는 링크가 없는 노드는 '구조적 대칭노드'인 것으로 간주될 수 있다. 또한, 나가는 링크가 하나이고 상기 나가는 링크에 연결된 노드가 구조적 대칭노드인 경우에는 상기 노드 역시 구조적 대칭노드인 것으로 간주될 수 있다. A node with no outgoing links in the network structure can be considered to be a 'structurally symmetric node'. In addition, when there is one outgoing link and a node connected to the outgoing link is a structurally symmetrical node, the node may also be regarded as a structurally symmetrical node.
'대칭'에 대한 구체적 의미의 예로서, N=3이고 노드가 A, B, C가 있고 노드 A가 네트워크 구조로부터 찾은 구조적 대칭노드라고 하자. 특정 끌개유역에 상태 (A, B, C)=(0, b, c)가 있으면 상기 끌개유역에 상태 (A, B, C)=(1, b, c)가 반드시 존재한다. 노드 A가 이런 대칭성을 유발하기 때문에 대칭노드로 지칭할 수 있다.As an example of the concrete meaning of 'symmetry', let N=3, there are nodes A, B, and C, and node A is a structurally symmetric node found from the network structure. If there is a state (A, B, C)=(0, b, c) in a particular catchment, then the state (A, B, C)=(1, b, c) must also exist in that catchment. Since node A causes this symmetry, it can be referred to as a symmetric node.
또는, 구조적 대칭노드는 아니지만 특정 끌개의 끌개유역을 계산하면 상기 예(N=3, 노드 A, B, C)에서 기술한 대칭성을 만족시키는 노드가 존재할 수 있다. 끌개유역을 계산한 후에 알 수 있는 대칭노드이므로 '동역학적 대칭노드'로 지칭할 수 있다. Alternatively, although it is not a structurally symmetric node, there may exist a node satisfying the symmetry described in the above example (N=3, nodes A, B, and C) when the basin of attraction of a specific attraction is calculated. Since it is a symmetric node that can be known after calculating the catchment basin, it can be referred to as a 'dynamically symmetric node'.
- 고정노드: 특정 끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드를 고정노드로 정의할 수 있다.- Fixed node: A node whose value is always constant in all states of a specific attracting basin can be defined as a fixed node.
본 발명의 일 실시예에 따르면, 상기 제어목적을 달성을 위하여, 원하지 않는 초기상태로부터의 원하는 바운더리로 일시적인 섭동에 의해 상태를 천이시킨다. According to an embodiment of the present invention, in order to achieve the above control purpose, a state is transitioned from an undesired initial state to a desired boundary by a temporary perturbation.
본 발명의 일 관점에 따라, 부울리언 네트워크 초기상태로부터, 상기 초기상태가 포함되지 않은 원하는 제1끌개유역의 바운더리 상태를 결정하는 단계; 및 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계;를 포함하며, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는, 부울리언 네트워크의 제어노드 결정방법이 제공될 수 있다.According to an aspect of the present invention, from the initial state of the Boolean network, determining a boundary state of a desired first attracting basin that does not include the initial state; and determining, among the nodes of the Boolean network, nodes having different states among the boundary state and the initial state as a control node, wherein the boundary state is one of the states belonging to the first attraction basin , A method for determining a control node of a Boolean network can be provided, characterized in that the initial state and the state having the minimum Hamming distance among the Hamming distances between the respective states belonging to the first attracting basin.
이때, 상기 부울리언 네트워크의 제어노드 결정방법은 상기 초기상태에 있는 상기 부울리언 네트워크의 노드들 중 상기 제어노드를 섭동하는 단계를 더 포함할 수 있다. In this case, the method for determining the control node of the Boolean network may further include perturbing the control node among nodes of the Boolean network in the initial state.
이때, 상기 제어노드의 섭동은 일시적으로만 이루어질 수 있다.In this case, the perturbation of the control node can be made only temporarily.
이때, 상기 바운더리 상태를 결정하는 단계는, 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계(상기 대칭노드는 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이면서, 그 노드를 제외한 나머지 끌개유역의 상태가 대칭을 이루는 노드); 상기 부울리언 네트워크의 노드들 중 고정노드를 결정하는 단계(상기 고정노드는 상기 제1끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드임); 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 부분해밍거리를 산출하는 단계(상기 부분해밍거리는, 상기 대칭노드 및 상기 고정노드를 제외한 노드인 비고정/비대칭 노드들만을 대상으로 산출한 해밍거리임); 및 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 상기 부분해밍거리들 중 최소거리를 갖는 상태를 상기 바운더리 상태인 것으로 결정하는 단계;를 포함할 수 있다.In this case, the step of determining the boundary state is a step of determining a symmetric node among the nodes of the Boolean network (the symmetric node has an average value of 0.5 when the values of the states of the Boolean network are averaged for each node) , a node whose state of attraction is symmetric except for that node); determining a fixed node among the nodes of the Boolean network (the fixed node is a node whose value is always constant in all states of the first attraction basin); Calculating a partial Hamming distance between the initial state and each state included in the first attracting basin (the partial Hamming distance is only for non-fixed/asymmetric nodes that are nodes excluding the symmetric node and the fixed node) calculated Hamming distance); and determining a state having a minimum distance among the partial Hamming distances between the initial state and each state belonging to the first attractor basin among states belonging to the first attractor basin as the boundary state; may include.
이때, 상기 부울리언 네트워크는 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응할 수 있다.In this case, the Boolean network is a model of a biomolecule signaling network, and each node of the Boolean network may correspond to each molecule of the biomolecule signaling network.
이때, 상기 바운더리 상태를 결정하는 단계는, 상기 부울리언 네트워크의 노드들 중, 상기 제1끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드인 것으로 정의되는 고정노드를 결정하는 고정노드 결정단계; 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리를 산출하는 해밍거리 산출단계; 및 상기 제1끌개유역에 속한 상태들 중 상기 초기상태로부터 최소 해밍거리를 갖는 상태를 바운더리 상태인 것으로 결정하는 단계;를 포함할 수 있다. 이때, 상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리일 수 있다.In this case, the step of determining the boundary state is a fixed node determination step of determining a fixed node defined as a node whose value is always constant in all states of the first attraction basin among the nodes of the Boolean network. ; Hamming distance calculation step of calculating a Hamming distance between the initial state and each state included in the first attracting basin; and determining that a state having a minimum Hamming distance from the initial state among states belonging to the first attracting basin is a boundary state. In this case, the Hamming distance may be a Hamming distance between the initial state and each state included in the first attraction basin, calculated for only nodes except for the fixed node among the nodes of the Boolean network.
이때, 상기 해밍거리 산출단계는, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 부분해밍거리를 산출하는 단계를 더 포함하고, 상기 부분해밍거리는, 상기 대칭노드 및 상기 고정노드를 제외한 노드인 비고정 노드들 및 비대칭 노드들만을 대상으로 산출한 해밍거리이며, 상기 바운더리 상태인 것으로 결정하는 단계는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 상기 부분해밍거리들 중 최소거리를 갖는 상태를 상기 바운더리 상태인 것으로 결정하는 단계를 포함할 수 있다.In this case, the Hamming distance calculating step further comprises calculating a partial Hamming distance between the initial state and each state included in the first attraction basin, the partial Hamming distance, the symmetric node and the fixed node It is a Hamming distance calculated for only non-fixed nodes and asymmetric nodes, which are nodes except and determining a state having a minimum distance among the partial Hamming distances between states belonging to the watershed as the boundary state.
이때, 상기 부울리언 네트워크의 제어노드 결정방법은 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함할 수 있다. 이때, 상기 대칭노드는 상기 부울리언 네트워크의 구조에서, 나가는 링크를 갖지 않는 노드로서 정의되는 구조적 대칭노드를 포함하고, 상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리일 수 있다.In this case, the method for determining the control node of the Boolean network may further include determining a symmetric node among the nodes of the Boolean network. In this case, the symmetric node includes a structurally symmetric node defined as a node having no outgoing link in the structure of the Boolean network, and the Hamming distance is between the fixed node and the symmetric node among the nodes of the Boolean network. It may be a Hamming distance between the initial state and each state included in the first attraction basin, calculated for only the nodes excepted.
이때, 상기 대칭노드는, 상기 부울리언 네트워크의 구조에서 나가는 링크를 한 개만 가지며, 상기 나가는 링크에 연결된 노드가 상기 구조적 대칭노드인 또 다른 구조적 대칭노드를 더 포함할 수 있다.In this case, the symmetric node may further include another structurally symmetric node having only one outgoing link from the structure of the Boolean network, and the node connected to the outgoing link being the structurally symmetrical node.
이때, 상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 더 포함할 수 있다. In this case, the symmetric node, when the values of the states of the Boolean network are averaged for each node, the average value is 0.5, and further includes a dynamic symmetric node defined as a node in which the remaining states are symmetric with respect to the node. can do.
이때, 상기 부울리언 네트워크의 제어노드 결정방법은 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함할 수 있다. 이때, 상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 포함하며, 상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리일 수 있다.In this case, the method for determining the control node of the Boolean network may further include determining a symmetric node among the nodes of the Boolean network. At this time, the symmetric node includes a dynamically symmetric node defined as a node whose average value is 0.5 when the values of the states of the Boolean network are averaged for each node, and the remaining states are symmetric with respect to the node. , the Hamming distance is a Hamming distance between the initial state and each state included in the first attraction basin, calculated for only nodes except for the fixed node and the symmetric node among the nodes of the Boolean network. have.
이때, 상기 제1끌개유역에 속한 모든 상태를 결정하는 방법은, 상기 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계; 상기 부울리언 네트워크의 기준상태를 상기 제1끌개로 초기화하는 단계; 및 ① 상기 부울리언 네트워크의 상태의 갱신규칙인 제1갱신규칙 및 ② 상기 부울리언 네트워크의 기준상태를 기초로 상기 부울리언 네트워크의 직전상태를 계산하는 상태 역추적 단계로서, 상기 기준상태는 기준시점에서의 상기 부울리언 네트워크의 상태로 정의되며, 상기 직전상태는 상기 기준시점의 바로 이전의 시점인 직전시점에서의 상기 부울리언 네트워크의 상태로 정의되는, 상기 상태 역추적 단계를 포함할 수 있다. 이때, 상기 계산된 직전상태들 각각에 대하여, 상기 기준상태를 상기 계산된 직전상태로 갱신한 후 상기 상태 역추적 단계를 반복함으로써, 상기 제1끌개가 포함된 제1끌개유역의 모든 상태를 결정할 수 있다.At this time, the method for determining all the states belonging to the first attractor basin includes the steps of: obtaining information about the first attractor belonging to the first attractor basin; initializing the reference state of the boolean network to the first decoupling; and ① a first update rule that is an update rule of the state of the Boolean network, and ② a state backtracking step of calculating the immediately preceding state of the Boolean network based on a reference state of the Boolean network, wherein the reference state is a reference point It is defined as the state of the Boolean network in , and the immediately preceding state is defined as the state of the Boolean network at a time immediately preceding the reference time, and may include the step of tracing back the state. At this time, for each of the calculated immediately preceding states, by repeating the state backtracking step after updating the reference state to the calculated immediately preceding state, all states of the first attractor basin including the first attractor are determined. can
이때, 상기 계산된 직전상태들 중 터미널 상태인 것으로 결정된 것들에 대해서는, 상기 기준시점에서의 상기 제1네트워크의 상태로서의 자격을 부여하지 않으며, 그리고 상기 상태 역추적 단계를 반복하지 않도록 되어 있으며, 상기 터미널 상태는, 상기 터미널 상태가 포함된 상태천이경로 상에서 그 이전의 상태가 존재하지 않는 상태일 수 있다.At this time, among the calculated immediately preceding states, those determined to be terminal states are not qualified as the state of the first network at the reference time, and the state traceback step is not repeated. The terminal state may be a state in which a previous state does not exist on a state transition path including the terminal state.
이때, 상기 부울리언 네트워크는 제1 부울리언 네트워크로부터 대칭노드가 제거된 것이며, 상기 부울리언 네트워크의 제1끌개는 상기 제1 부울리언 네트워크의 특정 끌개에서 상기 제거된 대칭노드의 값이 제거된 것일 수 있다.In this case, the Boolean network has a symmetric node removed from the first Boolean network, and the first attraction of the Boolean network is that the value of the removed symmetric node is removed from a specific attraction of the first Boolean network. can
본 발명의 다른 관점에 따라, 유선 또는 무선으로 외부 장치와 통신하는 통신 인터페이스 및 처리부를 포함하는 컴퓨팅 장치가 제공될 수 있다. 이때, 상기 처리부는, 상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하도록 되어 있고, 상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하도록 되어 있고, 그리고 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하도록 되어 있다. 이때, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태이다.According to another aspect of the present invention, a computing device including a communication interface and a processing unit for communicating with an external device by wire or wirelessly may be provided. At this time, the processing unit, information about the structure of the Boolean network from the external device through the communication interface, information about the initial state of the Boolean network, and the initial state among the attractors of the Boolean network are not included. obtain information about a first attractor belonging to a desired first attractor basin, determine a boundary state of the first attractor basin from the initial state, and determine the boundary state of the nodes of the boolean network and Among the initial states, nodes having different states are determined as control nodes. In this case, the boundary state is a state having a minimum Hamming distance among the Hamming distances between the initial state and each of the states belonging to the first attracting basin among the states belonging to the first attracting basin.
본 발명의 또 다른 관점에 따라, 유선 또는 무선으로 외부 장치와 통신하는 통신 인터페이스 및 처리부를 포함하는 컴퓨팅 장치의 상기 처리부로 하여금, 상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계; 상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하는 단계; 및 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계를 실행하도록 하는 프로그램이 기록되어 있는 컴퓨터 판독 가능한 논트랜지토리 저장장치가 제공될 수 있다. 이때, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태이다. According to another aspect of the present invention, the processing unit of the computing device including a communication interface and processing unit for communicating with an external device by wire or wirelessly, information about the structure of a Boolean network from the external device through the communication interface , obtaining information about the initial state of the Boolean network, information on a first attractor belonging to a desired first attractor basin that does not include the initial state among attractors of the Boolean network; determining a boundary state of the first attraction basin from the initial state; and a computer-readable non-transitory storage device in which a program for executing a step of determining, as a control node, nodes having different states among the boundary state and the initial state among the nodes of the Boolean network is recorded. can In this case, the boundary state is a state having a minimum Hamming distance among the Hamming distances between the initial state and each of the states belonging to the first attracting basin among the states belonging to the first attracting basin.
본 발명에 따르면 원하지 않는 초기상태에 있는 세포의 상태를 원하는 상태로 변화시키기 위해서 세포에 투여해야 할 약물의 조합을 결정할 수 있도록 하는 기술이 제공될 수 있다. According to the present invention, there can be provided a technology for determining the combination of drugs to be administered to cells in order to change the state of the cell from an undesired initial state to a desired state.
본 발명에 따르면 세포의 상태를 변화시키기 위하여 제어해야 하는 단백질을 결정하는 기술을 제공하고자 한다.According to the present invention, it is an object of the present invention to provide a technology for determining a protein to be controlled in order to change the state of a cell.
본 발명에 따르면 세포의 동역학 시스템을 모델링한 생체분자 신호처리 네트워크를 부울리언 네트워크로 모델링하였을 때에, 부울리언 네트워크의 원하지 않는 초기상태를 원하는 상태로 변화시키기 위하여 그 상태를 제어해야 하는 노드를 결정하는 기술을 제공할 수 있다. According to the present invention, when a biomolecule signal processing network modeling a dynamic system of a cell is modeled as a Boolean network, a node that needs to control the state is determined in order to change an undesired initial state of the Boolean network to a desired state. technology can be provided.
도 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은 본 발명의 일 실시예에 따라 제공되는 컴퓨팅 장치 및 이와 통신하는 장치들을 나타낸 다이어그램이다.1 is a first state transition path and a first state transition path showing a series of states in the process of changing with time from a first terminal state to a specific attraction in a specific attraction basin of a given first Boolean network. This shows the concept of the first inverse-state transition path, which is a path going back in time.
2 shows an example of a network structure of a first Boolean network.
FIG. 3 shows a first sub-network obtained by removing a structurally symmetric node from the first boolean network shown in FIG. 2 .
4 is a representation of the node classified as a crystalline node in FIG. 3 as a rectangle.
5 shows the values of each node at the immediately preceding time point among the values of each node of the first subnetwork on the left side, and the values of each node at the reference time point immediately after the immediately preceding time point are arranged on the right side at the reference time point. It is a schematic diagram of which node is affected by the value of each node at the previous point in time.
6 is a flowchart illustrating a method of determining whether a specific state of a given first boolean network is a terminal state, according to an embodiment of the present invention.
7 is a flowchart illustrating a method of determining all states of a specific attractor basin to which a specific attractor of a given first Boolean network belongs, according to an embodiment of the present invention.
8 is a diagram to help understand some terms used in an embodiment of the present invention.
9 is another diagram for explaining a terminal state, a boundary state, a minimum Hamming distance, a Hamming distance, a desired attraction, an attraction, an initial state, and a state transition path used in an embodiment of the present invention.
FIG. 10 is a further refinement of the concept presented in FIG. 9, and shows each state as a combination of values of a plurality of nodes.
11 is a flowchart illustrating a method of determining a control node for changing a biomolecule signaling network modeled as a Boolean network to a desired state, that is, a method of determining a biomolecule that is a control target according to an embodiment of the present invention. .
12 is a flowchart illustrating a method of determining a boundary state of a first attraction basin from a specific initial state according to an embodiment of the present invention.
The graph shown in FIG. 13 represents the states of the catchment basin of a specific attraction in a network consisting of 21 nodes, and is for explaining the properties of the aforementioned symmetric node.
14 shows an example of another p53 network for explaining the concept of an embodiment of the present invention.
15A is a diagram for explaining a control target according to an embodiment of the present invention.
15B shows the states of fixed nodes and non-fixed/asymmetric nodes in the initial state and the first boundary.
15C shows the states of fixed nodes and non-fixed/asymmetric nodes in the initial state and the second boundary.
16 is a diagram illustrating a computing device provided according to an embodiment of the present invention and devices communicating therewith.
이하, 본 발명의 실시예를 첨부한 도면을 참고하여 설명한다. 그러나 본 발명은 본 명세서에서 설명하는 실시예에 한정되지 않으며 여러 가지 다른 형태로 구현될 수 있다. 본 명세서에서 사용되는 용어는 실시예의 이해를 돕기 위한 것이며, 본 발명의 범위를 한정하고자 의도된 것이 아니다. 또한, 이하에서 사용되는 단수 형태들은 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 형태들도 포함한다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. However, the present invention is not limited to the embodiments described herein and may be implemented in various other forms. The terminology used in this specification is intended to help the understanding of the embodiment, and is not intended to limit the scope of the present invention. Also, singular forms used hereinafter include plural forms unless the phrases clearly indicate the opposite.
I. 본 발명의 일 실시에에 따라 특정 끌개유역의 모든 상태를 빠르게 결정하는 방법I. A method for quickly determining all states of a specific attracting basin according to an embodiment of the present invention
도 1은 주어진 제1부울리언 네트워크가 갖는 특정 끌개유역에서 제1터미널 상태(1111)로부터 특정 끌개(1131)까지 시간의 흐름에 따라 변화하는 과정에 있는 일련의 상태들을 나타내는 제1상태천이경로(3101)와 상기 제1상태천이경로를 시간을 거슬러 올라가는 경로인 제1역-상태천이경로(R3101)의 개념을 나타낸 것이다.1 is a first state transition path ( 3101) and the first inverse-state transition path R3101, which is a path that traverses the first state transition path in time.
도 1에서 점선으로 된 폐곡선은 상기 특정 끌개유역의 상태들 중 터미널 상태들을 나타낸 것이다.A closed curve with a dotted line in FIG. 1 shows the terminal states among the states of the specific attraction basin.
본 발명의 일 실시예에서는 특정 끌개(1131)의 값을 알 수 있다는 전제하에, 특정 끌개(1131)로부터 시간의 흐름을 거슬러, 특정 끌개(1131)로부터 시작되는 모든 역-상태천이경로들을 산출함으로써 상기 특정 끌개유역의 모든 상태의 값을 결정할 수 있다.In an embodiment of the present invention, on the premise that the value of the
본 발명의 일 실시예에 따른 단계(S11)에서, 주어진 제1부울리언 네트워크의 네트워크 구조를 획득할 수 있다. In step S11 according to an embodiment of the present invention, a network structure of a given first boolean network may be obtained.
도 2는 단계(S11)에서 제시한 상기 제1부울리언 네트워크의 네트워크 구조의 일 예를 나타낸 것이다. 도 2에 나타낸 예는 본 발명의 이해를 돕기 위하여 간단한 구조의 예를 나타낸 것이다.2 shows an example of the network structure of the first boolean network presented in step S11. The example shown in FIG. 2 shows an example of a simple structure to help the understanding of the present invention.
본 발명의 일 실시예에 따른 단계(S12)에서 상기 제1부울리언 네트워크 중 구조적 대칭노드를 결정할 수 있다.In step S12 according to an embodiment of the present invention, a structurally symmetric node may be determined among the first Boolean networks.
상기 구조적 대칭노드를 결정하는 방법은 별도로 후술한다.A method of determining the structurally symmetric node will be separately described later.
도 2에 예시한 제1부울리언 네트워크에 있어서 구조적 대칭노드는 X5이다.In the first Boolean network illustrated in FIG. 2 , the structurally symmetric node is X 5 .
본 발명의 일 실시예에 따른 단계(S13)에서 상기 제1부울리언 네트워크의 구조로부터 상기 결정된 모든 구조적 대칭노드를 제거함으로써 얻을 수 있는 제1서브 네트워크를 결정한다. In step S13 according to an embodiment of the present invention, a first subnetwork obtainable by removing all the determined structurally symmetric nodes from the structure of the first Boolean network is determined.
도 3은 도 2에 제시한 상기 제1부울리언 네트워크로부터 상기 구조적 대칭노드를 제거하여 얻은 제1서브 네트워크를 나타낸 것이다. FIG. 3 shows a first sub-network obtained by removing the structurally symmetric node from the first boolean network shown in FIG. 2 .
본 발명의 일 실시예에 따른 단계(S14)에서 상기 제1서브 네트워크의 구조에 관한 정보를 기초로 상기 제1서브 네트워크의 상태의 갱신규칙인 제1갱신규칙을 결정할 수 있다.In step S14 according to an embodiment of the present invention, a first update rule that is an update rule of the state of the first subnetwork may be determined based on the information on the structure of the first subnetwork.
예컨대 상기 제1갱신규칙은 구조적 대칭노드 X5이 없는 다음의 등식 1 (equation 1) 내지 등식 4와 같이 주어질 수 있다. 등식 1 내지 등식 4 각각은 두 개의 변을 갖는다. 좌측변은 기준시점(=미래시점)에서의 각 노드의 상태를 나타낸 것이고, 우측변은 상기 기준시점에 대한 직전시점(=과거시점)에서의 각 노드의 상태를 나타낸 것이다. For example, the first update rule may be given as the following
여기서 상기 직전시점에서의 상기 서브 네트워크의 상태는 다른 상태를 거치지 않고 상기 기준시점에서의 상기 서브 네트워크의 상태로 변화한다. 즉, 상기 직전시점은 상기 기준시점에 대한 직전시점이다.Here, the state of the sub-network at the immediately preceding time is changed to the state of the sub-network at the reference time without passing through other states. That is, the immediately preceding time point is a time point immediately before the reference time point.
[등식 1] X1 *=X3∨¬X4 [Equation 1] X 1 * =X 3 ∨¬X 4
[등식 2] X2 *=X1 [Equation 2] X 2 * =X 1
[등식 3] X3 *=¬X2 [Equation 3] X 3 * =¬X 2
[등식 4] X4 *=¬X1 [Equation 4] X 4 * =¬X 1
본 발명의 일 실시예에 따른 단계(S21)에서 상기 제1갱신규칙으로부터 또는 상기 제1서브 네트워크의 구조에 관한 정보로부터, 임의의 제1노드의 직전시점(=과거시점)에서의 상태가 상기 제1서브 네트워크의 기준시점(=미래시점)에서의 상태에 의해 유일하게 결정되는지 여부를 결정하여, 유일하게 결정되는 경우에는 상기 제1노드를 결정형 노드로 분류하고, 유일하게 결정되지 않는 경우에는 상기 제1노드를 비결정형 노드로 분류할 수 있다. In step S21 according to an embodiment of the present invention, from the first update rule or from the information on the structure of the first subnetwork, the state at the immediately preceding time point (=past time point) of the arbitrary first node is the It is determined whether or not it is uniquely determined by the state at the reference point (= future time point) of the first subnetwork, and if it is uniquely determined, the first node is classified as a deterministic node, and if it is not uniquely determined, The first node may be classified as an amorphous node.
등식 1 내지 등식 4에서 노드 X1과 노드 X2는 그 직전시점에서의 상태가 그 직후의 기준시점에서의 상태에 의해 유일하게 결정됨을 알 수 있다. 따라서 노드 X1과 노드 X2는 상기 결정형 노드로 분류된다.In
등식 1 내지 등식 4에서 노드 X3과 노드 X4는 그 직전시점에서의 상태가 그 기준시점에서의 상태에 의해 유일하게 결정되지 않는다는 점을 알 수 있다. 따라서 노드 X3과 노드 X4는 상기 비결정형 노드로 분류된다.In
도 4는 도 3에서 결정형 노드로 분류된 노드를 사각형으로 다시 표현한 것이다.4 is a representation of the node classified as a crystalline node in FIG. 3 as a rectangle.
본 발명의 일 실시예에 따른 단계(S22)에서 상기 결정형 노드로 분류된 노드들 중 아웃바운드 링크가 복수 개인 노드를 판별노드로 분류할 수 있다. A node having a plurality of outbound links among the nodes classified as the deterministic node in step S22 according to an embodiment of the present invention may be classified as a determining node.
도 3에 나타낸 제1서브 네트워크의 구조를 참조하면, 상기 결정형 노드들 중 노드 X1으로부터 나가는 아웃바운드 링크는 2개로서 복수 개이며, 상기 결정형 노드들 중 노드 X2로부터 나가는 아웃바운드 링크는 1개로서 복수 개가 아니다. 따라서 도 3에 나타낸 제1서브 네트워크의 경우에 있어서, 판별노드는 노드 X1이다.Referring to the structure of the first subnetwork shown in FIG. 3 , two outbound links from node X1 among the deterministic nodes are plural, and one outbound link from node X2 among deterministic nodes is one. As a dog, it is not a plural dog. Accordingly, in the case of the first subnetwork shown in FIG. 3, the discriminating node is the node X1 .
도 5는 제1서브 네트워크의 각 노드의 값 중 직전시점에서의 각 노드의 값을 좌측에 배치하고 상기 직전시점의 직후인 기준시점에서의 각 노드의 값을 우측에 배치하여, 기준시점에서의 각 노드의 값이 직전시점에서의 어떤 노드로부터 영향을 받는지를 도식화한 것이다. 도 5의 구조는 도 3 또는 도 4의 링크로부터 쉽게 이해될 수 있다.5 shows the values of each node at the immediately preceding time point among the values of each node of the first subnetwork on the left side, and the values of each node at the reference time point immediately after the immediately preceding time point are arranged on the right side at the reference time point. It is a schematic diagram of which node is affected by the value of each node at the previous point in time. The structure of Fig. 5 can be easily understood from the link of Fig. 3 or Fig. 4 .
다른 예에 따른 서브 네트워크가 주어진 경우 판별노드가 없거나 또는 복수 개일 수도 있다.When a subnetwork according to another example is given, there may be no discrimination node or there may be a plurality of determination nodes.
상기 제1갱신규칙은 아래의 등식 5 내지 등식 8로 다시 제시될 수 있다. 아래의 등식 5 내지 등식 8 역시 상기 제1갱신규칙인 것으로 간주될 수 있다. The first update rule may be presented again by
[등식 5] X3∨¬X4=X1 * [Equation 5] X 3 ∨¬X 4 =X 1 *
[등식 6] X1 =X2 * [Equation 6] X 1 =X 2 *
[등식 7] ¬X2=X3 * [Equation 7] ¬X 2 =X 3 *
[등식 8] ¬X1=X4 * [Equation 8] ¬X 1 =X 4 *
상기 제1갱신규칙은 아래의 등식 9 내지 등식 12로 다시 제시될 수 있다. 아래의 등식 9 내지 등식 12 역시 상기 제1갱신규칙인 것으로 간주될 수 있다. The first update rule may be presented again by
[등식 9] X3∨¬X4=X1 * [Equation 9] X 3 ∨¬X 4 =X 1 *
[등식 10] X1 =X2 * [Equation 10] X 1 =X 2 *
[등식 11] X2=¬X3 * [Equation 11] X 2 =¬X 3 *
[등식 12] X1=¬X4 * [Equation 12] X 1 =¬X 4 *
본 발명의 일 실시예에 따른 단계(S23)에서 상기 제1갱신규칙에 포함된 각각의 등식(등식 1 내지 등식 4, 또는 등식 5 내지 등식 8, 또는 등식 9 내지 등식 12)의 양 변 중 상기 서브 네트워크의 상태인 과거상태(=직전상태)를 나타내는 제1변에 상기 판별노드가 포함되어 있는지를 확인할 수 있다. In step S23 according to an embodiment of the present invention, among both sides of each equation (
예컨대, 등식 9 내지 등식 12에 있어서 상기 직전시점에서의 과거상태를 나타내는 제1변은 좌변과 우변 중 좌변이다.For example, in
본 발명의 일 실시예에 따른 단계(S24)에서 상기 제1갱신규칙에 포함된 등식들 중 상기 제1변에 상기 판별노드가 포함되어 있는 등식들을 선택할 수 있다.In step S24 according to an embodiment of the present invention, among the equations included in the first update rule, equations including the discrimination node on the first side may be selected.
예컨대, 단계(S22)의 예에서 판별노드는 노드 X1인데 등식 9 내지 등식 12에 있어서 좌변에 노드 X1이 포함된 등식은 등식 10 및 등식 12이다. 따라서 상기 선택된 등식은 등식 10 및 등식 12이다.For example, in the example of step S22, the discriminant node is the node X 1 , and in
본 발명의 일 실시예에 따른 단계(S25)에서 상기 선택된 등식들을 이용하여, 상기 직전시점의 바로 다음 시점인 기준시점에서의 상기 서브 네트워크의 상태가 상술한 터미널 상태인지 여부를 판별하는 판별식을 결정할 수 있다.Using the selected equations in step S25 according to an embodiment of the present invention, a discriminant for determining whether the state of the sub-network at a reference time point immediately following the immediately preceding time point is the above-described terminal state can decide
예컨대 상기 선택된 등식은 등식 10 및 등식 12을 살펴보면, 유효한 과거 상태인 X1 값이 존재하려면, X1 =X2 * =X1=¬X4 *인 관계가 성립해야 한다. 즉, X2 * =¬X4 *인 관계가 성립해야만, 주어진 X1 *의 직전값인 X1가 유효하게 존재할 수 있다. For example, referring to
반대로 만일 상기 X2 * =¬X4 *인 관계가 성립하지 않는다면, 즉, X2 * =X4 *인 관계가 성립한다면, 주어진 X1 *의 직전값인 X1가 유효하게 존재하지 않는다고 볼 수 있다. 즉, 상기 제1서브 네트워크의 가능한 상태들 중 X2 * =X4 *인 관계가 성립하는 상태가 주어졌다면, 상기 주어진 상태보다 이전에 발생한 다른 값의 상태는 존재하지 않는다는 것을 알 수 있다. 그리고 상술한 정의에 의하여 상기 주어진 상태는 터미널 상태인 것으로 간주될 수 있다. Conversely, if the relationship X 2 * =¬X 4 * does not hold, that is, if the relationship X 2 * =X 4 * holds, X 1 , which is the immediately preceding value of X 1 * , does not exist effectively. can That is, if a state in which a relationship of X 2 * =X 4 * is established among the possible states of the first subnetwork is given, it can be seen that there is no state of another value occurring before the given state. And by the above definition, the given state may be regarded as a terminal state.
이때, 상기 X2 * =X4 *로 규정되는 식을 상술한 판별식인 것으로 정의할 수 있다. 아래의 등식 13은 상기 제1서브 네트워크에서 얻을 수 있는지 특정한 상태가 터미널 상태인지 여부를 판별하는 판별식이다. At this time, the An expression defined by X 2 * =X 4 * may be defined as the above-described discriminant.
서브 네트워크의 구조에 따라 판별식은 존재하지 않거나 또는 복수 개 존재할 수도 있다.Depending on the structure of the sub-network, there may be no discriminant or a plurality of discriminants may exist.
[등식 13 ] = [판별식] X2 * =X4 * [equation 13 ] = [discriminate] X 2 * =X 4 *
본 발명의 일 실시예에 따른 단계(S31)에서 상기 제1부울리언 네트워크의 특정 끌개를 획득할 수 있다.In step S31 according to an embodiment of the present invention, a specific attraction of the first boolean network may be obtained.
예컨대, 상기 특정 끌개에서 상기 제1부울리언 네트워크의 각 노드(X1 내지 X5)가 갖는 값은 아래의 표 1 및 표 2와 같이 제시될 수 있다. 표 1 또는 표 2의 상태를 갖는 시점을 이하 제1시점 또는 기준시점으로 지칭할 수 있다.For example, the values of each node (X 1 to X 5 ) of the first Boolean network in the specific attraction may be presented as shown in Tables 1 and 2 below. A time point having the state of Table 1 or Table 2 may be referred to as a first time point or a reference time point below.
본 발명의 일 실시예에 따른 단계(S32)에서 상기 제1부울리언 네트워크의 서브 네트워크인 제1서브 네트워크의 제1끌개를 획득할 수 있다.In step (S32) according to an embodiment of the present invention, it is possible to obtain a first attraction of a first subnetwork that is a subnetwork of the first Boolean network.
예컨대, 상기 제1끌개에서 상기 제1서브 네트워크의 각 노드가 갖는 값은 아래의 표 3 및 표4와 같이 제시될 수 있다. 표 3 및 표 4의 상태를 갖는 시점을 이하 제1시점으로 지칭할 수 있다. For example, the value of each node of the first subnetwork in the first attraction may be presented as shown in Tables 3 and 4 below. A time point having the states of Tables 3 and 4 may be referred to as a first time point below.
본 명세서에서 상기 제1시점에서의 상기 제1서브 네트워크의 상태를 '기준시점의 상태', 또는 '제1시점의 상태' 또는 '제1레이어의 상태'로 지칭할 수도 있다. 상기 제1끌개가 포인트 끌개(point attractor)인 경우, 상기 제1끌개의 끌개유역인 제1끌개유역에서의 상기 '기준시점의 상태'는 1개가 존재할 수 있다. 이와 비교하여, 상기 제1끌개가 사이클릭 끌개(cyclic attractor)인 경우, 상기 제1끌개의 끌개유역인 제1끌개유역에서의 상기 '기준시점의 상태'는 복수 개가 존재할 수 있다. 표 3 및 표 4는 상기 제1끌개가 사이클릭 끌개인 경우를 나타낸 것이다.In the present specification, the state of the first subnetwork at the first time point may be referred to as a 'reference time state', a 'first time point state', or a 'first layer state'. If the first attraction is a point attractor (point attractor), the 'state of the reference point' in the first attractor basin, which is the basin of the first attractor, may exist. In comparison with this, when the first attractor is a cyclic attractor, the 'state of the reference point' in the first attractor basin, which is the basin of the first attractor, may exist. Tables 3 and 4 show a case in which the first attractor is a cyclic attractor.
본 발명의 일 실시예에 따른 단계(S41)에서, ① 상기 제1서브 네트워크의 제1끌개의 값 및 ② 상기 제1갱신규칙을 이용하여, 상기 기준시점의 직전시점(=제2시점)에서의 상기 제1서브 네트워크의 상태들 중 어느 하나를 계산할 수 있다. In the step (S41) according to an embodiment of the present invention, using ① the value of the first attraction of the first subnetwork and ② the first update rule, at the time immediately before the reference point (= second time point) It is possible to calculate any one of the states of the first subnetwork of .
본 명세서에서 상기 기준시점의 직전시점인 제2시점에서의 상기 제1서브 네트워크의 상태를 '직전시점의 상태', '제2시점의 상태' 또는 '제2레이어의 상태'으로 지칭할 수 있다. 상기 직전시점의 상태는 없거나, 1개 이거나, 또는 복수 개 존재할 수 있다.In the present specification, the state of the first sub-network at the second time point immediately before the reference time point may be referred to as 'the state of the immediate time point', 'the state of the second time point', or 'the state of the second layer'. . The state of the immediately preceding time point may be absent, one, or plural.
예컨대 표 3에 나타낸 ① 기준시점에서의 제1상태 {X1 , X2 , X3 , X4} = {0, 1, 1, 0}에 ② 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 어느 하나인 '직전시점의 제1상태'를 계산하면, 표 5와 같이 제시될 수 있다.For example, by applying the
표 5에 제시한 직전시점에서의 제1상태는 상기 기준시점에서의 제2상태(=사이클릭 끌개)와 동일하다는 점을 알 수 있다. 따라서 사이클릭 끌개의 성질에 따라, 상기 직전시점보다 미리 발생한 시점인 제3시점에서의 상태는 다시 상기 기준시점에서의 제1상태와 동일하게 된다는 점을 이해할 수 있다. It can be seen that the first state at the immediately preceding time point presented in Table 5 is the same as the second state (= cyclic attraction) at the reference time point. Therefore, it can be understood that, according to the nature of the cyclic attraction, the state at the third time point that occurs earlier than the immediately preceding time point becomes the same as the first state at the reference time point again.
표 4에 나타낸 기준시점에서의 제2상태 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}에 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 또 다른 어느 하나인 '직전시점의 제2상태'를 계산하면, 표 6과 같이 제시될 수 있다.By applying the update rule to the second state {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1} at the reference point in Table 4, Another one of the states, 'the second state at the immediate time point', is calculated, and may be presented as shown in Table 6.
표 6에 제시한 직전시점에서의 제2상태는 상기 기준시점에서의 제1상태(=사이클릭 끌개)와 동일하다는 점을 알 수 있다. 따라서 상기 직전시점보다 먼저 발생한 시점인 제3시점에서의 상태는 다시 상기 기준시점에서의 제2상태와 동일하게 된다는 점을 이해할 수 있다. It can be seen that the second state at the immediately preceding time point presented in Table 6 is the same as the first state (= cyclic attraction) at the reference time point. Accordingly, it can be understood that the state at the third time point, which occurs earlier than the immediately preceding time point, becomes the same as the second state at the reference time point again.
표 4에 나타낸 기준시점에서의 제2상태 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}에 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 또 다른 어느 하나인 '직전시점의 제3상태'를 계산하면, 표 7과 같이 제시될 수 있다.By applying the update rule to the second state {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1} at the reference point in Table 4, Another one of the states, 'the third state at the immediate time point', is calculated, and may be presented as shown in Table 7.
표 4에 나타낸 기준시점에서의 제2상태 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}에 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 또 다른 어느 하나인 '직전시점의 제4상태'를 계산하면, 표 8과 같이 제시될 수 있다.By applying the update rule to the second state {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1} at the reference point in Table 4, If another one of the states, 'the fourth state at the immediate time point', is calculated, it can be presented as shown in Table 8.
상술한 표 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개가 존재함을 알 수 있다.Summarizing the states presented in Tables 3 to 8 above, {X 1 , X 2 , X 3 , X 4 } = {0,1,1 ,0} and {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1}. And as the state of the immediately preceding time point (the second layer or the second time point), {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1}, {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1}, {X 1 , X 2 , X 3 , X 4 } = {0,1,1,1}, and {X 1 , X 2 , X 3 , X It can be seen that there are 4 of 4 } = {0,1,0,0}.
이제 새롭게 산출된 상기 4개의 직전시점 상태들 각각이, 그 보다 앞선 시점에서의 상태들인 이전상태를 갖는지 여부를 반복하여 계산할 수 있다. Now, it is possible to repeatedly calculate whether each of the four newly calculated state of the immediately preceding time point has a previous state, which is the state at a time preceding it.
이때, 새롭게 산출된 상기 4개의 직전시점 상태들 중 상기 터미널 상태가 존재하는지 여부를 상기 판별식을 이용하여 확인할 수 있다. 이러한 확인 작업을 거치면, 터미널 상태인 것으로 확인된 직전시점 상태들에 대해서는, 상기 직전시점 상태들보다 앞서 발행한 이전상태의 상태들을 구하는 과정을 거칠 필요가 없으므로 컴퓨팅 파워가 감소된다. 즉, 아래의 단계(S51)을 실행할 수 있다. In this case, whether the terminal state exists among the newly calculated four immediately preceding point-in-time states can be checked using the discriminant. After this check operation, computing power is reduced because there is no need to go through the process of obtaining the previous state issued prior to the immediately preceding state for the state of the immediately preceding time point confirmed to be the terminal state. That is, the following step S51 may be executed.
본 발명의 일 실시예에 따른 단계(S51)에서는, 기준시점의 상태로부터 새롭게 산출된 직전시점의 상태들 중 상기 판별식을 만족하는 직전시점의 상태를 터미널 상태로 결정할 수 있다. In step S51 according to an embodiment of the present invention, the state of the immediately preceding time point satisfying the above discriminant among the states of the immediately preceding time point newly calculated from the state of the reference point point may be determined as the terminal state.
예컨대 상기 제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상태만이 터미널 상태인 것으로 결정할 수 있다. For example, the discriminant derived for the first subnetwork is
본 발명의 일 실시예에 따른 단계(S61)에서, 상기 직전시점의 상태들 중, ① 터미널 상태가 아니며 ② 끌개(=제1끌개)가 아닌 것으로 결정된 상태에게, 새로운 기준시점의 상태로서의 자격을 부여하고, 상기 새로운 기준시점의 상태들 각각에 대하여 직전시점의 상태를 결정할 수 있다.In step (S61) according to an embodiment of the present invention, among the states of the immediately preceding time point, ① not a terminal state and ② qualification as a new reference point state to a state determined not to be an attraction (= first attraction) and the state of the immediately preceding time may be determined for each of the states of the new reference time point.
예컨대, 상기 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}은 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 없다.For example, {X 1 , X 2 , X 3 , X 4 } = {1, 0, 0, 1}, {X 1 found to be an attraction (= first attraction) among the four states of the immediately preceding time point , X 2 , X 3 , X 4 } = {1, 0, 0, 1} cannot be qualified as the state of the new reference point. In addition, {X 1 , X 2 , X 3 , X 4 } = {0,1,1,1}, which is determined to be a terminal state, among the states of the four immediately preceding time points, is qualified as the state of the new reference time point. cannot be granted
따라서 상기 4개의 직전시점의 상태들 중 오직 {X1 , X2 , X3 , X4} = {0,1,0,0}만이 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 없다.Accordingly, only {X 1 , X 2 , X 3 , X 4 } = {0,1,0,0} among the four states of the immediately preceding time point cannot be qualified as the state of the new reference time point.
따라서 {X1 , X2 , X3 , X4} = {0,1,0,0}을 기준시점의 상태로 삼아, 이에 대한 직전시점의 상태를 상기 갱신규칙에 따라 생성할 수 있다.Accordingly, by taking {X 1 , X 2 , X 3 , X 4 } = {0,1,0,0} as the state of the reference time, the state of the immediately preceding time may be generated according to the update rule.
상술한 단계들을 반복하여, 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 있는 상태가 더 이상 발견되지 않으면 상기 제1서브 네트워크의 상기 제1끌개가 속한 끌개유역인 제1끌개유역에 포함된 모든 상태가 결정된 것으로 간주할 수 있다.By repeating the above-mentioned steps, if a state that can be qualified as the state of the new reference point is no longer found, all of the first attractors included in the first attractor basin to which the first attractor of the first subnetwork belongs. The status can be considered determined.
본 발명의 일 실시예에 따른 단계(S71)에서, 상기 확정된 제1끌개유역의 모든 상태값에, 상기 제거되었던 대칭노드의 값을 부가함으로써, 상기 제1 부울리언 네트워크의 상기 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정할 수 있다. In step S71 according to an embodiment of the present invention, by adding the value of the removed symmetric node to all state values of the determined first attraction basin, the specific attraction of the first Boolean network belongs to. It is possible to determine all the states of a particular catchment basin.
이때 상기 대칭노드의 값으로서 상기 대칭노드가 가질 수 있는 모든 값이 부가될 수 있다. 예컨대 제거되었던 대칭노드가 1개인 경우, 상기 제1 부울리언 네트워크의 상기 특정 끌개유역의 모든 상태들의 개수는, 상기 제1서브 네트워크의 상기 제1끌개유역의 모든 상태들의 개수의 2배일 수 있다.In this case, as the value of the symmetric node, all values that the symmetric node may have may be added. For example, when the removed symmetric node is one, the number of all states of the specific attracting basin of the first Boolean network may be twice the number of all states of the first attracting basin of the first subnetwork.
도 6은 본 발명의 일 실시예에 따라, 주어진 제1 부울리언 네트워크의 특정 상태가 터미널 상태인지 여부를 판단하는 방법을 나타낸 순서도이다.6 is a flowchart illustrating a method of determining whether a specific state of a given first boolean network is a terminal state, according to an embodiment of the present invention.
단계(S11)에서 주어진 제1부울리언 네트워크의 네트워크 구조를 획득할 수 있다. The network structure of the given first Boolean network may be obtained in step S11.
단계(S12)에서 상기 제1부울리언 네트워크 중 구조적 대칭노드를 결정할 수 있다.In step S12, a structurally symmetric node may be determined among the first Boolean networks.
단계(S13)에서 상기 제1부울리언 네트워크의 구조로부터 상기 결정된 모든 구조적 대칭노드를 제거함으로써 얻을 수 있는 제1서브 네트워크를 결정한다. In step S13, a first sub-network obtainable by removing all the determined structurally symmetric nodes from the structure of the first boolean network is determined.
단계(S14)에서 상기 제1서브 네트워크의 구조에 관한 정보를 기초로 상기 제1서브 네트워크의 상태의 갱신규칙인 제1갱신규칙을 결정할 수 있다.In step S14, a first update rule that is an update rule of the state of the first subnetwork may be determined based on the information on the structure of the first subnetwork.
단계(S21)에서 상기 제1갱신규칙으로부터 또는 상기 제1서브 네트워크의 구조에 관한 정보로부터, 임의의 제1노드의 직전시점(=과거시점)에서의 상태가 상기 제1서브 네트워크의 기준시점(=미래시점)에서의 상태에 의해 유일하게 결정되는지 여부를 결정하여, 유일하게 결정되는 경우에는 상기 제1노드를 결정형 노드로 분류하고, 유일하게 결정되지 않는 경우에는 상기 제1노드를 비결정형 노드로 분류할 수 있다. In step S21, from the first update rule or from information about the structure of the first subnetwork, the state at the immediately preceding time point (=past time point) of any first node is the reference point of the first subnetwork ( = future time), it is determined whether or not it is uniquely determined, and when it is uniquely determined, the first node is classified as a deterministic node. can be classified as
단계(S22)에서 상기 결정형 노드로 분류된 노드들 중 아웃바운드 링크가 복수 개인 노드를 판별노드로 분류할 수 있다. A node having a plurality of outbound links among the nodes classified as the deterministic node in step S22 may be classified as a determining node.
단계(S23)에서 상기 제1갱신규칙에 포함된 각각의 등식(등식 1 내지 등식 4, 또는 등식 5 내지 등식 8, 또는 등식 9 내지 등식 12)의 양 변 중 상기 서브 네트워크의 상태인 과거상태(=직전상태)를 나타내는 제1변에 상기 판별노드가 포함되어 있는지를 확인할 수 있다. In step S23, the state of the sub-network among both sides of each of the equations (
단계(S24)에서 상기 제1갱신규칙에 포함된 등식들 중 상기 제1변에 상기 판별노드가 포함되어 있는 등식들을 선택할 수 있다.In step S24, from among the equations included in the first update rule, equations including the discriminant node in the first side may be selected.
단계(S25)에서 상기 선택된 등식들을 이용하여, 상기 직전시점의 바로 다음 시점인 기준시점에서의 상기 서브 네트워크의 상태가 상술한 터미널 상태인지 여부를 판별하는 판별식을 결정할 수 있다.Using the selected equations in step S25, a discriminant for determining whether the state of the sub-network at a reference time point immediately following the immediately preceding time point is the above-described terminal state may be determined.
도 7은 본 발명의 일 실시예에 따라, 주어진 제1 부울리언 네트워크의 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정하는 방법을 나타낸 순서도이다.7 is a flowchart illustrating a method of determining all states of a specific attractor basin to which a specific attractor of a given first Boolean network belongs, according to an embodiment of the present invention.
단계(S31)에서 상기 제1부울리언 네트워크의 특정 끌개를 획득할 수 있다.In step S31, a specific attraction of the first boolean network may be obtained.
단계(S32)에서 상기 제1부울리언 네트워크의 서브 네트워크인 제1서브 네트워크의 제1끌개를 획득할 수 있다.In step S32, it is possible to obtain a first attraction of a first subnetwork that is a subnetwork of the first Boolean network.
단계(S41)에서, ① 상기 제1서브 네트워크의 제1끌개의 값 및 ② 상기 제1갱신규칙을 이용하여, 상기 기준시점의 직전시점(=제2시점)에서의 상기 제1서브 네트워크의 상태들 중 어느 하나를 계산할 수 있다. In step S41, using ① the value of the first attraction of the first subnetwork and ② the first update rule, the state of the first subnetwork at the time immediately preceding the reference point (= second time point) Any one of them can be calculated.
단계(S51)에서는, 기준시점의 상태로부터 새롭게 산출된 직전시점의 상태들 중 상기 판별식을 만족하는 직전시점의 상태를 터미널 상태로 결정할 수 있다. In step S51, the state of the immediately preceding time point satisfying the discriminant among the states of the immediately preceding time point newly calculated from the state of the reference point point may be determined as the terminal state.
단계(S61)에서, 상기 직전시점의 상태들 중, ① 터미널 상태가 아니며 ② 끌개(=제1끌개)가 아닌 것으로 결정된 상태에게, 새로운 기준시점의 상태로서의 자격을 부여하고, 상기 새로운 기준시점의 상태들 각각에 대하여 직전시점의 상태를 결정할 수 있다.In step S61, among the states of the immediately preceding time point, ① not a terminal state and ② a state determined not to be an attraction (= first attraction) is qualified as a state of a new reference point, and the new reference point of time is For each of the states, the state of the immediately preceding time may be determined.
단계(S71)에서, 상기 확정된 제1끌개유역의 모든 상태값에, 상기 제거되었던 대칭노드의 값을 부가함으로써, 상기 제1 부울리언 네트워크의 상기 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정할 수 있다. In step S71, by adding the value of the removed symmetric node to all the determined state values of the first attractor basin, all states of the particular attractor basin to which the particular attractor of the first Boolean network belongs are determined. can
II. 본 발명의 일 실시예에 따라 결정된 특정 끌개유역의 모든 상태에 관한 정보를 이용하여 구현할 수 있는 응용사례 - 원하지 않는 초기상태를 원하는 끌개로 변환시키는 방법II. An application case that can be implemented using information about all states of a specific attraction basin determined according to an embodiment of the present invention - A method of converting an unwanted initial state into a desired attractor
상술한 바와 같이, 본 발명의 일 실시예에 따르면, 부울리언 네트워크의 끌개 지형은 완전히 알지 못하더라도, 상기 부울리언 네트워크의 원하는 특정 끌개가 속한 특정 끌개유역의 모든 상태를 빠르게 결정할 수 있다. 이하, 이렇게 결정한 특정 끌개유역의 모든 상태를 이용하여 수행할 수 있는 응용사례를 제시한다.As described above, according to an embodiment of the present invention, even if the topography of the attraction of the Boolean network is not completely known, all states of a specific attractor basin to which a desired specific attractor of the Boolean network belongs can be quickly determined. Hereinafter, application cases that can be performed using all the conditions of the specific attracting basin determined in this way are presented.
본 발명의 일 실시예에 따르면, 원하지 않는 초기상태로부터의 원하는 바운더리로 일시적인 섭동에 의해 상태를 천이시키는 방법을 제공할 수 있다.According to an embodiment of the present invention, it is possible to provide a method for transitioning a state from an undesired initial state to a desired boundary by a temporary perturbation.
도 8은 본 발명의 일 실시예에서 사용되는 몇 가지 용어의 이해를 돕기 위한 다이어그램이다.8 is a diagram to help understand some terms used in an embodiment of the present invention.
도 8에 나타낸 원(circle)들(1111, 1121, 1131, 1211)은 각각 부울리언 네트워크의 노드들의 값의 조합에 의해 구분되는 서로 다른 상태를 나타낸다. 상기 부울리언 네트워크는 상술한 도 1 내지 도 7에 설명한 제1 부울리언 네트워크일 수 있다.The
상태(1111, 1121, 1131)은 원하는 제1끌개유역[DB]에 속하는 상태들이다.The
상태(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)의 순서로 변화한다.The
특히, 상태(1111)는 시간 영역에서 그 이전의 상태가 존재하지 않는 터미널 상태(1111)를 나타내고, 상태(1121)는 원하지 않는 상태 (1211)로부터의 바운더리 상태를 나타내며, 상태(1131)는 원하는 제1끌개유역[DB]의 끌개인 원하는 제1끌개(1131)을 나타낸다.In particular,
참조번호 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]의 바운더리 상태가 존재하지 않을 수도 있다.In FIG. 8, on the
도 9는 본 발명의 일 실시예에서 사용되는 터미널 상태, 바운더리 상태, 최소해밍거리, 해밍거리, 원하는 끌개, 끌개, 초기상태, 상태천이경로를 설명하기 위한 또 다른 다이어그램이다.9 is another diagram for explaining a terminal state, a boundary state, a minimum Hamming distance, a Hamming distance, a desired attraction, an attraction, an initial state, and a state transition path used in an embodiment of the present invention.
참조번호 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]에 포함된 것이다.Among all the circles shown in FIG. 9, all other circles except for the second
도 10은 도 9에 제시한 개념을 더 정교화 한 것으로서, 각 상태를 복수 개의 노드들의 값들의 조합으로 구체화하여 나타낸 것이다.FIG. 10 is a further refinement of the concept presented in FIG. 9, and shows each state as a combination of values of a plurality of nodes.
도 10의 (a)는 주어진 부울리언 네트워크(100)의 예이다. 도 10의 (a)에서 영어 대문자 A, B, C, D, E, F, G를 둘러싼 각 원들은 상기 부울리언 네트워크(100)에 포함된 서로 다른 노드들을 의미한다. 즉, 도 10의 (a)에 제시된 부울리언 네트워크(100)는 총 7개의 노드들과 이 노드들을 연결하는 링크들에 의해 정의된다. 10A is an example of a given
도 10의 (b)는 도 10의 (a)에 나타낸 부울리언 네트워크가 갖는 일 상태의 값을 도식화한 것이다. 도 10의 (b), 도 10의 (c), 및 도 10의 (d)에서 서로 붙어 있는 7개의 노드들의 집합은 한 개의 상태를 나타낸다. FIG. 10(b) is a diagram illustrating a value of one state of the Boolean network shown in FIG. 10(a). A set of seven nodes attached to each other in FIGS. 10(b), 10(c), and 10(d) represents one state.
도 10의 (b)에서, 가는 외곽선(101)의 노드는 부울리언 네트워크의 각 노드가 가질 수 있는 바이너리 값 0과 1중 제1바이너리값 '1'을 나타내고, 두꺼운 외곽선(102)의 노드는 제2바이너리값 '0'을 나타낸다. 도 10의 (b)의 예에서, 노드(B) 및 노드(G)는 상기 제2바이너리값을 갖고, 나머지 노드들은 상기 제1바이너리값을 갖는다.In (b) of FIG. 10 , the node of the
도 10의 (c)에서, 상태(1133)는 원하는 제1끌개(1133)를 나타낸다. 원하는 제1끌개(1133)로 향하는 상태천이경로는 복수 개 존재하며 이들을 각각 참조번호 3106, 3107, 및 3108로 표시하였다. 도 10의 (c)에서, 원하는 제1끌개(1133)의 끌개유역인 원하는 제1끌개유역[DB]에 포함된 모든 상태를 알 수 있는 것으로 가정할 수 있으나, 도 10의 (c)에서는 이 중 원하는 제1끌개(1133) 및 일부 터미널 상태인 터미널 상태(1116)만을 나타내었다. In (c) of FIG. 10 , the
도 10의 (d)에서, 원하지 않는 끌개유역[UB]에 속한 원하지 않는 상태인 제2초기상태(1213)가 주어져 있다고 가정할 때에, 상기 제2초기상태(1213)으로부터의 상기 제1끌개유역[DB]의 바운더리 상태(1126)를 찾아낼 수 있다. In FIG. 10(d), assuming that the second
도 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)의 상태에 도달하게 된다.In the example shown in (d) of Figure 10, the hamming distance (HD) between the second
도 10에 나타낸 개념에 따라 본 발명의 일 실시예에 따른 제어노드의 결정방법을 도 11에 나타낸 순서도와 같이 설명할 수 있다. According to the concept shown in FIG. 10 , a method for determining a control node according to an embodiment of the present invention can be described as in the flowchart shown in FIG. 11 .
도 11은 본 발명의 일 실시예에 따라 부울리언 네트워크로 모델링되는 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위한 제어노드를 결정하는 방법, 즉 제어목표가 되는 생체분자를 결정하는 방법을 나타낸 순서도이다.11 is a flowchart illustrating a method of determining a control node for changing a biomolecule signaling network modeled as a Boolean network to a desired state, that is, a method of determining a biomolecule that is a control target according to an embodiment of the present invention. .
단계(S10)에서, 상기 부울리언 네트워크에 속한 끌개들 중 원하는 끌개인 제1끌개(ex: 1133)의 끌개유역인 제1끌개유역[DB]을 획득할 수 있다.In step S10, the first attractor basin [DB], which is the basin of the first attractor (ex: 1133), which is a desired attractor among the attractors belonging to the Boolean network, may be acquired.
단계(S20)에서, 원하지 않는 끌개유역인 제2끌개유역[UB]에 속한 상태로서, 원하지 않는 상태인 제2 초기상태(ex: 1213)를 획득할 수 있다.In step S20 , as a state belonging to the second attracting basin [UB] that is an unwanted attracting basin, an unwanted second initial state (ex: 1213) may be obtained.
단계(S30)에서, 상기 초기상태로부터 상기 제1끌개유역[DB]의 바운더리 상태를 결정할 수 있다. 상기 바운더리는 상술한 정의에 따른 상태를 의미할 수 있다.In step (S30), it is possible to determine the boundary state of the first attracting basin [DB] from the initial state. The boundary may mean a state according to the above definition.
단계(S40)에서, 상기 초기상태와 상기 바운더리 상태 중 서로 다른 값을 갖는 노드들만을 일시적인 섭동을 가해야 하는 제어노드로서 선택할 수 있다.In step S40, only nodes having different values among the initial state and the boundary state may be selected as control nodes to which temporary perturbation should be applied.
단계(S50)에서, 상기 제어노드들에 대해서만 일시적인 섭동을 가함으로써, 상기 초기상태를 상기 제1끌개의 상태로 천이시킬 수 있다.In step S50, by applying a temporary perturbation only to the control nodes, it is possible to transition the initial state to the state of the first attraction.
상기 단계(S10~S50)는 컴퓨팅 장치에 의해 수행될 수 있다. 상기 컴퓨팅 장치는 상기 단계(S10~S50)의 실행을 위해 필요한 자료들을 외부의 장치로부터 유무선 통신수단을 이용하여 획득할 수 있다.The steps S10 to S50 may be performed by a computing device. The computing device may acquire data necessary for the execution of the steps S10 to S50 from an external device using wired/wireless communication means.
이하, 상기 단계(S30)에서, 상기 초기상태로부터 상기 제1끌개유역[DB]의 바운더리 상태를 결정하는 구체적인 실시예를 도 12를 참조하여 설명한다.Hereinafter, in the step (S30), a specific embodiment of determining the boundary state of the first attracting basin [DB] from the initial state will be described with reference to FIG. 12 .
도 12는 본 발명의 일 실시예에 따라 특정 초기상태로부터 제1끌개유역의 바운더리 상태를 결정하는 방법을 나타낸 순서도이다. 여기서 상기 특정 초기상태는 상기 제1끌개유역에 포함되지 않은 상태이다.12 is a flowchart illustrating a method of determining a boundary state of a first attraction basin from a specific initial state according to an embodiment of the present invention. Here, the specific initial state is a state that is not included in the first attraction basin.
단계(S310)에서, 상기 부울리언 네트워크의 노드들 중 '대칭노드'(symmetric node)를 결정한다. In step S310, a 'symmetric node' is determined among the nodes of the Boolean network.
일 실시예에서, 상기 구조적 대칭노드는 부울리언 네트워크의 구조 정보로부터 결정할 수 있으므로, 그 결정을 위해 로직 계산을 하지 않아도 된다. 부울리언 네트워크의 각 노드에는 나가는 링크(outbound link) 및/또는 들어오는 링크(inbound link)가 연결되어 있을 수 있다. 이때, 나가는 링크가 없는 노드는 대칭노드인 것으로 간주될 수 있다. 또한, 나가는 링크가 하나인 또 다른 노드로서 상기 하나의 나가는 링크에 연결된 노드가 대칭노드인 경우에는 상기 또 다른 노드 역시 대칭노드인 것으로 간주될 수 있다.In one embodiment, since the structurally symmetric node can be determined from the structural information of the Boolean network, there is no need to perform a logic calculation for the determination. Each node of the Boolean network may be connected to an outbound link and/or an inbound link. In this case, a node having no outgoing link may be regarded as a symmetric node. In addition, when another node having one outgoing link and a node connected to the one outgoing link is a symmetric node, the other node may also be regarded as a symmetric node.
예컨대 도 10의 (a)에 나타낸 부울리언 네트워크(100)의 노드 G에는 나가는 링크가 연결되어 있지 않다. 따라서 노드 G는 대칭노드이다. 또한 노드 F로부터 나가는 링크의 개수는 한 개이고, 이 링크에 연결된 다음 노드는 대칭노드인 노드 G이다. 따라서 노드 F 역시 대칭노드이다. 특정 끌개의 끌개유역을 계산한 후, 대칭성을 가지는 동역학적 대칭노드도 존재할 수 있다.For example, an outgoing link is not connected to node G of the
참고로, 어떤 끌개유역에 속한 상태들 중 대칭노드의 값이 0인 상태들의 개수와 대칭노드의 값이 1인 상태들의 개수는 서로 동일하다. 즉, 특정 끌개유역에서의 대칭노드가 갖는 상태들의 평균값이 0.5이다. 그리고 상기 대칭노드를 제외한 나머지 노드의 상태 분포가 대칭적으로 일치한다.For reference, the number of states in which the value of the symmetric node is 0 and the number of states in which the value of the symmetric node is 1 among states belonging to a certain attraction basin are the same. That is, the average value of the states of a symmetric node in a specific attraction basin is 0.5. In addition, the state distribution of the remaining nodes except for the symmetric node is symmetrically identical.
상기 대칭노드로 결정된 노드들은 일시적인 섭동을 사용하는 제어에 항상 참여하지 않는 노드이다. 즉 일시적인 섭동을 위한 제어대상이 아니다. 따라서 상술한 해밍거리의 산출 과정에서도 상기 대칭노드는 고려되지 않는다. 또는 상술한 해밍거리의 비교 과정에서도 상기 대칭노드는 제외될 수 있다.The nodes determined as the symmetric nodes are nodes that do not always participate in the control using temporary perturbation. That is, it is not a control target for temporary perturbation. Therefore, the symmetric node is not considered even in the above-described calculation of the Hamming distance. Alternatively, the symmetric node may be excluded from the above-described Hamming distance comparison process.
임의의 부울리언 네트워크에는 상기 대칭노드가 한 개 이상 존재할 수도 있고 또는 전혀 존재하지 않을 수도 있다.In any boolean network, one or more or none of the symmetric nodes may exist.
단계(S320)에서, 단계(S10)에서 정의된 원하는 제1끌개유역[DB]의 모든 상태들에 있어서 그 값이 항상 일정한 노드를 검색하여 상기 검색된 노드를 '고정노드'로 결정한다. In step S320, a node whose value is always constant in all states of the desired first attracting basin [DB] defined in step S10 is searched for, and the found node is determined as a 'fixed node'.
예컨대 도 10의 (a)에 나타낸 부울리언 네트워크(100)에서 노드 C가 상기 원하는 제1끌개유역[DB]에서의 고정노드일 수 있다.For example, in the
임의의 끌개유역에는 고정노드가 한 개 이상 존재할 수도 있고 또는 전혀 존재하지 않을 수도 있다.There may be one or more fixed nodes or none at all in any catchment basin.
상기 제1끌개유역[DB]에서의 상기 고정노드의 값이, 상기 단계(S20)에 정의된 원하지 않는 상태인 초기상태(ex: 1213)에서의 상기 고정노드의 값과 동일한 경우에는, 상기 초기상태로부터 상기 원하는 제1끌개의 상태로 변화시키기 위해서는, 상기 고정노드에 대한 일시적인 섭동을 해서는 안 된다. When the value of the fixed node in the first attracting basin [DB] is the same as the value of the fixed node in the initial state (ex: 1213), which is the unwanted state defined in step S20, the initial In order to change from the state to the desired state of the first attraction, there should be no temporary perturbation of the fixed node.
반대로 상기 제1끌개유역[DB]에서의 상기 고정노드의 값이, 상기 초기상태(ex: 1213)에서의 상기 고정노드의 값과 다른 경우에는, 상기 초기상태로부터 상기 원하는 제1끌개의 상태로 변화시키기 위해서는, 상기 고정노드에 대한 일시적인 섭동을 해야만 한다.Conversely, when the value of the fixed node in the first attractor basin [DB] is different from the value of the fixed node in the initial state (ex: 1213), from the initial state to the desired state of the first attractor In order to change, a temporary perturbation of the fixed node must be made.
이제, 상기 부울리언 네트워크에 속한 노드들 중 상기 대칭노드 및 상기 고정노드를 제외한 나머지 노드들을 비고정/비대칭 노드(unfixed/asymmetric node)라고 정의할 수 있다. Now, among the nodes belonging to the Boolean network, the remaining nodes other than the symmetric node and the fixed node may be defined as unfixed/asymmetric nodes.
단계(S330)에서. 상기 비고정/비대칭 노드들만을 대상으로, 상기 초기상태와 상기 원하는 제1끌개유역[DB]의 각각의 상태들 간의 해밍거리를 계산할 수 있다. In step S330. With respect to only the non-fixed/asymmetric nodes, the Hamming distance between the initial state and the respective states of the desired first attracting basin [DB] may be calculated.
단계(S340)에서, 상기 계산된 해밍거리 중 최단 거리를 결정하고, 상기 제1끌개유역[DB]의 상태들 중 상기 최단거리를 갖는 상태들의 집합을 바운더리로 결정할 수 있다.In step S340, the shortest distance among the calculated Hamming distances may be determined, and a set of states having the shortest distance among the states of the first attracting basin [DB] may be determined as a boundary.
예컨대 도 10의 (a)에 나타낸 부울리언 네트워크(100)에서 비고정/비대칭 노드들은 노드 A, 노드 B, 노드 D, 및 노드 E일 수 있다.For example, in the
상술한 단계(S310, S320, S330, S340)들에 따른 바운더리 상태 결정방법은, 본 발명의 일 실시예에 따른 것이다. 이와 달리, 상술한 고정노드, 대칭노드, 비고정/비대칭 노드들을 서로 구분하지 않고, 부울리언 네트워크에 포함된 모든 노드들을 대상으로 상기 초기상태와 상기 원하는 제1끌개유역[DB]의 각각의 상태들 간의 해밍거리를 계산하더라도 도 11에 나타낸 본 발명의 일 실시예에 따른 제어노드를 결정할 수 있다는 점을 이해할 수 있다. 다만, 상술한 단계(S310, S320, S330, S340)들에 따른 바람직한 실시예를 사용하지 않는 경우에는 바운더리 상태를 결정하기 위한 컴퓨팅 파워가 증가될 것이다.The method for determining the boundary state according to the steps S310, S320, S330, and S340 described above is according to an embodiment of the present invention. In contrast, the above-described fixed node, symmetric node, and non-fixed/asymmetric nodes are not distinguished from each other, and each state of the initial state and the desired first attraction basin [DB] for all nodes included in the Boolean network. It can be understood that the control node according to the embodiment of the present invention shown in FIG. 11 can be determined even by calculating the Hamming distance between them. However, if the preferred embodiment according to the above-described steps ( S310 , S320 , S330 , S340 ) is not used, the computing power for determining the boundary state will be increased.
도 13에 나타낸 그래프는 21개 노드로 구성된 네트워크에서 특정 끌개의 끌개유역의 상태들을 나타내고, 상술한 대칭노드의 성질을 설명하기 위한 것이다.The graph shown in FIG. 13 shows the states of the catchment basin of a specific attraction in a network consisting of 21 nodes, and is for explaining the properties of the aforementioned symmetric node.
도 13에 나타낸 그래프의 가로축의 숫자 1부터 21은 21개의 노드들을 숫자로 나타낸 것이며, 21개의 값으로 구성된 각 행은 상기의 끌개 유역의 서로 다른 상태들을 나타낸 것이며, 그래프 중 어두운 부분은 각 상태에 있어서 각 노드가 갖는 값이 '1'인 경우를 나타낸 것이고, 그래프 중 밝은 부분은 각 상태에 있어서 각 노드가 갖는 값이 '0'인 경우를 나타낸 것이다.
도 13에서 노드 아이디가 20인 노드가 대칭노드이며, 상기 대칭노드가 각 상태에서 갖는 값을 그래프의 왼쪽에 별도로 표시하였다. 상기 대칭노드에 있어서 그 값이 '1'인 상태 수와 '0'인 상태 수가 서로 같다. 즉, 상기 부울리언 네트워크에서 상기 대칭노드의 상태 평균값은 0.5이다. 그리고 상기 대칭노드를 제외한 나머지 노드들 값 분포는 상기 대칭노드의 값을 기준으로 대칭을 이룬다는 점을 알 수 있다.상기의 두 가지 성질을 만족시키면 대칭노드가 된다. In FIG. 13 , a node having a node ID of 20 is a symmetric node, and values of the symmetric node in each state are separately displayed on the left side of the graph. In the symmetric node, the number of states whose value is '1' is equal to the number of states whose value is '0'. That is, the average value of the states of the symmetric nodes in the Boolean network is 0.5. It can be seen that the value distribution of the remaining nodes except for the symmetric node is symmetric based on the value of the symmetric node. If the above two properties are satisfied, the node becomes a symmetric node.
상기의 두 가지 성질 때문에 원하지 않는 초기상태에서 상기 대칭노드 20을 무시하고 20개 노드만으로 구성된 상태에서 원하는 끌개유역까지의 해밍거리를 구하면 된다. 따라서 상기 대칭노드에 대한 섭동은 거리 감소에 영향을 주지 않는다. 즉, 상기 대칭노드는 상술한 일시적인 섭동을 위한 제어에 참여하지 않을 수 있다.Because of the above two properties, the
도 14는 본 발명의 일 실시예의 개념을 설명하기 위한 또 다른 p53 네트워크의 예를 나타낸 것이다.14 shows an example of another p53 network for explaining the concept of an embodiment of the present invention.
도 14에서 p53 네트워크(110)의 네트워크 구조 중 제1영역(111)에 포함된 노드들은 모두 고정노드들이고, 제3영역(113)에 포함된 노드들은 모두 대칭노드들이며, 그리고 제2영역(112)에 포함된 노드들은 모두 비고정/비대칭 노드들이다.In FIG. 14 , nodes included in the
p53 네트워크(110)의 원하는 끌개유역[DB]에서, 상기 대칭노드들이 갖는 상태들의 평균값은 0.5이고, 상기 고정노드들 중 PTEN 및 P53가 각각 갖는 상태들의 평균값은 1.0이고, 상기 고정노드들 중 PTEN 및 P53를 제외한 나머지 노드가 각각 갖는 상태들의 평균값은 0.0이며, 그리고 상기 비고정노드가 각각 갖는 상태들의 평균값은 0, 및 1.0이 아닌 값이고 상기 비대칭 노드는 평균값이 0.5가 아니거나 0.5가 되더라도 상기 대칭노드를 제외한 나머지 노드들 값 분포는 상기 대칭노드의 값을 기준으로 대칭을 이루지 않는다.In the desired attraction basin [DB] of the
고정노드를 결정하는 상술한 방법과 같이, 제3영역(113)에서 Proliferation 노드로부터는 나가는 링크가 없다. 또한 P21 노드 및 CyclinD1 노드로부터 나가는 링크가 각각 하나이고, 이 링크에 연결된 노드는 대칭노드인 Proliferation 노드이다. 그리고 Bcatenin 노드로부터 나가는 링크가 하나이고, 이 링크에 연결된 노드는 대칭노드인 CyclinD1 노드이다. 따라서 제3영역(113)에 포함된 노드들은 상술한 정의에 따라 대칭노드인 것으로 결정될 수 있다.As in the above-described method for determining the fixed node, there is no outgoing link from the Proliferation node in the
상술한 해밍거리의 계산 및 비교는 제2영역(112)에 포함된 비고정/비대칭 노드들에 대해서만 수행될 수 있으며, 이로써 계산량을 감소시킬 수 있다.The calculation and comparison of the above-described Hamming distance may be performed only for non-fixed/asymmetric nodes included in the
도 15a는 본 발명의 일 실시예에 따른 제어목표를 설명하기 위한 다이어그램이다.15A is a diagram for explaining a control target according to an embodiment of the present invention.
도 15a 내지 도 15c에 나타낸 원(circle)은 각 노드들을 나타내며, 어두운 바탕의 원은 '1'의 값을 갖는 상태를 나타내며, 밝은 바탕의 원은 '0'의 값을 갖는 상태를 나타낼 수 있다. 각 노드들은 각각 1 부터 21사이의 아이디를 가질 수 있다. 각 노드에 대한 아이디는 각 원의 내부에 표시되어 있다.A circle shown in FIGS. 15A to 15C may represent each node, a dark circle may indicate a state having a value of '1', and a light circle may indicate a state having a value of '0'. . Each node may have an ID between 1 and 21, respectively. The ID for each node is marked inside each circle.
도 15a에서 참조번호 120은 부울리언 네트워크(120)의 구조를 나타낸다. 부울리언 네트워크(120)는 21개의 노드들 및 이들을 연결하는 링크들로 구성된다.In FIG. 15A ,
도 15a에서 참조번호 1214는 원하지 않는 끌개유역[UB]에 속한 원하지 않는 초기상태(1214)를 나타내며, 참조번호 1134는 원하는 끌개유역인 제1끌개유역[DB]에 속하는 원하는 제1끌개(1134)를 나타낸다.In FIG. 15A,
도 15a에 나타낸 부울리언 네트워크(120)와 관련하여 다음의 전제를 먼저 이해할 필요가 있다. In relation to the
첫째, 부울리언 네트워크(120)의 대칭노드들은 참조번호가 1 내지 4인 노드들이다. 이러한 대칭노드는 상술한 부울리언 네트워크의 구조 정보만으로 결정된 것이다. 상기 대칭노드들은 임의의 두 상태 간의 해밍거리의 계산 과정 및 제어노드의 선택 과정에서 고려되지 않을 수 있으며, 이로써 컴퓨팅 복잡도를 감소시킬 수 있다.First, the symmetric nodes of the
둘째, 원하는 제1끌개 (1134)가 포함되는 상기 원하는 제1끌개유역[DB]의 모든 상태들을 분석한 결과, 상기 제1끌개유역[DB]에 대한 고정노드들은 참조번호 5 내지 13인 노드들이다. Second, as a result of analyzing all the states of the desired first attractor basin [DB] in which the desired
셋째, 원하는 제1끌개유역[DB]에 대한 비고정/비대칭 노드들은 참조번호 14 내지 21인 노드들이다.Third, the non-fixed/asymmetric nodes for the desired first attracting basin [DB] are the nodes with
이때, 초기상태(1214)와 상기 제1끌개유역[DB]에 속한 각각의 상태 간의 해밍거리는 상기 비고정/비대칭노드들, 즉, 노드(14~21)만을 대상으로 계산될 수 있다.At this time, the Hamming distance between the
넷째, 도 15a에 나타낸 부울리언 네트워크(120)에서, 초기상태(1214)로부터의 상기 제1끌개유역[DB]의 바운더리 상태는 2개가 존재하며, 각각 도 15b 및 도 15c에 나타낸 제1바운더리(1127) 및 제2바운더리(1128)이다. Fourth, in the
이제 도 15b 및 도 15c를 함께 참조하여 본 발명의 일 실시예에 따른 제어노드의 결정방법을 설명한다.A method of determining a control node according to an embodiment of the present invention will now be described with reference to FIGS. 15B and 15C together.
도 15b는 초기상태(1214) 및 제1바운더리(1127)에 있어서, 고정노드들(5~13)과 비고정/비대칭 노드들(14~21)의 상태를 나열한 것이다.15B shows the states of the fixed
초기상태(1214)에서 고정노드(5, 7, 9, 12, 13) 및 비고정/비대칭 노드(15, 17, 21)의 값은 '0'이며, 고정노드(6, 8, 10, 11) 및 비고정/비대칭 노드(14, 16, 18, 19, 20)의 값은 '1'이다. In the
제1바운더리(1127)에서 고정노드(5, 6, 7, 9, 10, 12, 13) 및 비고정/비대칭 노드(15, 17, 18)의 값은 '0'이며, 고정노드(8, 11) 및 비고정/비대칭 노드(14, 16, 19, 20, 21)의 값은 '1'이다. In the
즉, 초기상태(1214)와 제1바운더리(1127)의 상태를 서로 비교하면 고정노드(6, 10) 및 비고정/비대칭 노드(18, 21)의 값만이 서로 다르다. 따라서 부울리언 네트워크(120)가 초기상태(1214)에 있을 때에, 고정노드(6, 10) 및 비고정/비대칭 노드(18, 21)의 값만을 일시적으로 섭동하면, 부울리언 네트워크(120)가 제1바운더리 상태(1127)로 상태변화하며, 결국 제1바운더리 상태(1127)가 속한 제1끌개유역[DB]의 끌개인 제1끌개(1134)로 그 상태가 변할 수 있다.That is, when the
도 15c는 초기상태(1214) 및 제2바운더리(1128)에 있어서, 고정노드들(5~13)과 비고정/비대칭 노드들(14~21)의 상태를 나열한 것이다.15C shows the states of the fixed
도 15b와 관련하여 설명한 바와 같이, 도 15c에서 초기상태(1214)와 제2바운더리(1128)의 상태를 서로 비교하면 고정노드(6, 10) 및 비고정/비대칭 노드(14, 21)의 값만이 서로 다르다. 따라서 부울리언 네트워크(120)가 초기상태(1214)에 있을 때에, 고정노드(6, 10) 및 비고정/비대칭 노드(14, 21)의 값만을 일시적으로 섭동하면, 부울리언 네트워크(120)가 제2바운더리상태(1128)로 상태변화하며, 결국 제2바운더리상태(1128)가 속한 제1끌개유역[DB]의 끌개인 제1끌개(1134)로 그 상태가 변할 수 있다.As described with reference to FIG. 15B , in FIG. 15C , when the states of the
도 15a 내지 도 15c를 통해 설명한 예는 바운더리 상태가 총 2개인 경우를 나타낸다. 이 예에서 도 15b와 같이 4개의 노드(6, 10, 18, 21)로 구성되는 제1세트의 노드들만을 섭동하거나, 또는 도 15c와 같이 4개의 노드(6, 10, 14, 21)로 구성되는 제2세트의 노드들만을 섭동함으로써 부울리언 네트워크(120)를 원하는 제1끌개(1134)의 상태로 변화시킬 수 있다. The example described with reference to FIGS. 15A to 15C shows a case in which there are a total of two boundary states. In this example, only the first set of nodes consisting of four
이와 달리, 5개 이상의 노드들을 섭동시키더라도 초기상태(1214)를 제1끌개유역[DB]에 속한 임의의 상태로 변화시킬 수 있을 것이다. 그러나 상술한 본 발명의 일 실시예에 따르면, 가장 적은 수의 노드들만을 섭동함으로써 원하는 제1끌개(1134)의 상태로 변화시킬 수 있다. 각각의 노드는 서로 다른 단백질을 의미할 수 있으며, 서로 다른 단백질의 상태를 함께 섭동하기 위해서는 서도 다른 약물들을 함께 투여해야 할 수 있으므로 섭동해야 하는 노드들의 개수를 최소화함으로써 기술적인 좋은 효과를 얻을 수 있다.Alternatively, even if five or more nodes are perturbed, the
III. 컴퓨팅 장치 및 장치들III. Computing device and devices
도 16은 본 발명의 일 실시예에 따라 제공되는 컴퓨팅 장치 및 이와 통신하는 장치들을 나타낸 다이어그램이다.16 is a diagram illustrating a computing device provided according to an embodiment of the present invention and devices communicating therewith.
컴퓨팅 장치(910)는, 유선으로 외부장치(940)으로 통신하거나 또는 유선 또는 무선으로 외부 장치(960, 970)와 통신하는 통신 인터페이스(930), 처리부(910), 및 저장부(920)를 포함할 수 있다.The
외부장치(940)는 예컨대, USB, 외장형 하드디스크 등의 포터블 기록장치일 수 있다. 외부장치(960)는 자료를 담고 있는 데이터베이스 장치일 수 있다. 외부장치(970)는 내려 받기 가능한 명령코드를 기록해둔 장치일 수 있다.The
네트워크(950)는 LAN, MAN, LTE, 무선통신, 근거리 무선 통신을 위한 네트워크 등 다양한 네트워크 중 하나일 수 있다.The
처리부(910)는 CPU, MCU, FPGA, CUDA 프로세서 등 다양한 프로세싱 디바이스일 수 있다.The
저장부(920)는 예컨대 컴퓨팅 장치(910)에 포함되어 있는 휘발성 메모리(ex: RAM) 및/또는 비휘발성의 저장소(ex: SDD, HDD)일 수 있다. The
이때 상기 처리부(910)는, 상기 통신 인터페이스(930)를 통해 상기 외부 장치(940 또는 960)로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하도록 되어 있고,상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하도록 되어 있고, 그리고 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하도록 되어 있을 수 있다. 이때, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태일 수 있다.At this time, the
저장부(920) 또는 네트워크(950)를 통해 컴퓨팅 장치(900)에 연결되는 외부장치(970)는 프로그램이 기록되어 있는 컴퓨터 판독 가능한 논트랜지토리 저장장치일 수 있다. 이때, 상기 프로그램은 상기 컴퓨팅 장치(900)의 상기 처리부(910)로 하여금 상술한 기능들 및 단계들을 실행하도록 하는 명령어의 집합들로 구성된 것일 수 있다.The
상술한 본 발명의 실시예들을 이용하여, 본 발명의 기술 분야에 속하는 자들은 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에 다양한 변경 및 수정을 용이하게 실시할 수 있을 것이다. 특허청구범위의 각 청구항의 내용은 본 명세서를 통해 이해할 수 있는 범위 내에서 인용관계가 없는 다른 청구항에 결합될 수 있다.By using the above-described embodiments of the present invention, those skilled in the art will be able to easily implement various changes and modifications within the scope without departing from the essential characteristics of the present invention. The content of each claim in the claims may be combined with other claims without reference within the scope that can be understood through this specification.
Claims (15)
상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계;
를 포함하며,
상기 부울리언 네트워크는 세포의 동역학 시스템을 모델링한 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응하고,
상기 제어노드는 상기 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위해 섭동하는 제어목표가 되는 노드이며,
상기 초기상태는 상기 세포가 암세포인 상태이고, 상기 원하는 상태는 세포 사멸 상태이고,
상기 제1끌개유역은 상기 부울리언 네트워크가 가질 수 있는 상태들 중 소정의 제1끌개로 향하는 모든 상태천이경로에 포함되는 모든 상태들로 이루어진 집합이며, 그리고
상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는,
부울리언 네트워크의 제어노드 결정방법.determining, by the computing device, a boundary state of a desired first attracting basin that does not include the initial state from the initial state of the Boolean network; and
determining, by the computing device, nodes having different states from among the nodes of the Boolean network as control nodes when the boundary state and the initial state are compared with each other;
includes,
The Boolean network is a model of a biomolecule signaling network modeling a dynamic system of a cell, and each node of the Boolean network corresponds to each molecule of the biomolecule signaling network,
The control node is a node that is a control target for perturbing the biomolecule signaling network to a desired state,
The initial state is a state in which the cell is a cancer cell, and the desired state is a cell death state,
The first attraction basin is a set of all states included in all state transition paths toward a predetermined first attraction among states that the Boolean network may have, and
The boundary state, among the states belonging to the first attracting basin, characterized in that it is a state having a minimum Hamming distance among the Hamming distances between the initial state and each state belonging to the first attracting basin,
How to determine the control node of a Boolean network.
상기 컴퓨팅 장치가, 상기 초기상태에 있는 상기 부울리언 네트워크의 노드들 중 상기 제어노드를 섭동하는 단계를 더 포함하는,
부울리언 네트워크의 제어노드 결정방법.According to claim 1,
Further comprising the step of the computing device perturbing the control node among the nodes of the Boolean network in the initial state,
How to determine the control node of a Boolean network.
상기 바운더리 상태를 결정하는 단계는,
상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중, 상기 제1끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드인 것으로 정의되는 고정노드를 결정하는 고정노드 결정단계;
상기 컴퓨팅 장치가, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리를 산출하는 해밍거리 산출단계; 및
상기 컴퓨팅 장치가, 상기 제1끌개유역에 속한 상태들 중 상기 초기상태로부터 최소 해밍거리를 갖는 상태를 바운더리 상태인 것으로 결정하는 단계;
를 포함하며,
상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리인 것을 특징으로 하는,
부울리언 네트워크의 제어노드 결정방법.According to claim 1,
The step of determining the boundary state,
a fixed node determining step of determining, by the computing device, a fixed node defined as a node whose value is always constant in all states of the first attraction basin among the nodes of the Boolean network;
Hamming distance calculation step of calculating, by the computing device, a Hamming distance between the initial state and each state included in the first attraction basin; and
determining, by the computing device, a state having a minimum Hamming distance from the initial state among states belonging to the first attraction basin as a boundary state;
includes,
The Hamming distance is a Hamming distance between the initial state and each state included in the first attraction basin, which is calculated for only nodes except for the fixed node among the nodes of the Boolean network.
How to determine the control node of a Boolean network.
상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함하며,
상기 대칭노드는 상기 부울리언 네트워크의 구조에서, 나가는 링크를 갖지 않는 노드로서 정의되는 구조적 대칭노드를 포함하고,
상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리인,
부울리언 네트워크의 제어노드 결정방법.5. The method of claim 4,
Further comprising the step of determining, by the computing device, a symmetric node among the nodes of the Boolean network,
The symmetric node includes a structurally symmetric node defined as a node having no outgoing link in the structure of the Boolean network,
The Hamming distance is a Hamming distance between the initial state and each state included in the first attraction basin, calculated for only nodes except for the fixed node and the symmetric node among the nodes of the Boolean network,
How to determine the control node of a Boolean network.
상기 해밍거리 산출단계는, 상기 컴퓨팅 장치가, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 부분해밍거리를 산출하는 단계를 더 포함하고,
상기 부분해밍거리는, 상기 대칭노드 및 상기 고정노드를 제외한 노드인 비고정 노드들 및 비대칭 노드들만을 대상으로 산출한 해밍거리이며,
상기 바운더리 상태인 것으로 결정하는 단계는, 상기 컴퓨팅 장치가, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 상기 부분해밍거리들 중 최소거리를 갖는 상태를 상기 바운더리 상태인 것으로 결정하는 단계를 포함하는,
부울리언 네트워크의 제어노드 결정방법.6. The method of claim 5,
The Hamming distance calculation step further comprises, by the computing device, calculating a partial Hamming distance between the initial state and each state included in the first attraction basin,
The partial Hamming distance is a Hamming distance calculated for only non-fixed nodes and asymmetric nodes that are nodes other than the symmetric node and the fixed node,
The step of determining that the boundary state is a minimum of the partial Hamming distances between the initial state and each state belonging to the first attracting basin, among states belonging to the first attracting basin, by the computing device determining a state having a distance to be the boundary state,
How to determine the control node of a Boolean network.
상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함하며,
상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 포함하며,
상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리인,
부울리언 네트워크의 제어노드 결정방법.5. The method of claim 4,
Further comprising the step of determining, by the computing device, a symmetric node among the nodes of the Boolean network,
The symmetric node includes a dynamically symmetric node defined as a node whose average value is 0.5 when the values of the states of the Boolean network are averaged for each node, and the remaining states are symmetric with respect to the node,
The Hamming distance is a Hamming distance between the initial state and each state included in the first attraction basin, calculated for only nodes except for the fixed node and the symmetric node among the nodes of the Boolean network,
How to determine the control node of a Boolean network.
상기 제1끌개유역에 속한 모든 상태를 결정하는 방법은,
상기 컴퓨팅 장치가, 상기 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계;
상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 기준상태를 상기 제1끌개로 초기화하는 단계; 및
상기 컴퓨팅 장치가, ① 상기 부울리언 네트워크의 상태의 갱신규칙인 제1갱신규칙 및 ② 상기 부울리언 네트워크의 기준상태를 기초로 상기 부울리언 네트워크의 직전상태를 계산하는 상태 역추적 단계로서, 상기 기준상태는 기준시점에서의 상기 부울리언 네트워크의 상태로 정의되며, 상기 직전상태는 상기 기준시점의 바로 이전의 시점인 직전시점에서의 상기 부울리언 네트워크의 상태로 정의되는, 상기 상태 역추적 단계
를 포함하며,
상기 컴퓨팅 장치가, 상기 계산된 직전상태들 각각에 대하여, 상기 기준상태를 상기 계산된 직전상태로 갱신한 후 상기 상태 역추적 단계를 반복함으로써, 상기 제1끌개가 포함된 제1끌개유역의 모든 상태를 결정하는 것을 특징으로 하는,
부울리언 네트워크의 제어노드 결정방법.According to claim 1,
The method of determining all states belonging to the first attraction basin is,
obtaining, by the computing device, information about a first attractor belonging to the first chute basin;
initializing, by the computing device, a reference state of the Boolean network to the first decoupling; and
A state tracing step in which the computing device calculates the immediately preceding state of the Boolean network based on ① a first update rule that is an update rule of the state of the Boolean network and ② a reference state of the Boolean network, wherein the reference A state is defined as the state of the Boolean network at a reference time, and the immediately preceding state is defined as the state of the Boolean network at a time immediately preceding the reference time.
includes,
The computing device, for each of the calculated immediately preceding states, updates the reference state to the calculated immediately preceding state and then repeats the state backtracking step, so that all of the first attractor basins including the first attractor Characterized in determining the state,
How to determine the control node of a Boolean network.
상기 계산된 직전상태들 중 터미널 상태인 것으로 결정된 것들에 대해서는, 상기 기준시점에서의 상기 부울리언 네트워크의 상태로서의 자격을 부여하지 않으며, 그리고 상기 상태 역추적 단계를 반복하지 않도록 되어 있으며,
상기 터미널 상태는, 상기 터미널 상태가 포함된 상태천이경로 상에서 그 이전의 상태가 존재하지 않는 상태인 것을 특징으로 하는,
부울리언 네트워크의 제어노드 결정방법.12. The method of claim 11,
Among the calculated immediate states, those determined to be terminal states are not qualified as the state of the Boolean network at the reference time, and the state traceback step is not repeated;
The terminal state is a state in which a previous state does not exist on a state transition path including the terminal state,
How to determine the control node of a Boolean network.
상기 부울리언 네트워크는 제1 부울리언 네트워크로부터 대칭노드가 제거된 것이며,
상기 부울리언 네트워크의 제1끌개는 상기 제1 부울리언 네트워크의 특정 끌개에서 상기 제거된 대칭노드의 값이 제거된 것을 특징으로 하는,
부울리언 네트워크의 제어노드 결정방법.12. The method of claim 11,
The boolean network is a symmetric node removed from the first boolean network,
The first attraction of the Boolean network is characterized in that the value of the removed symmetric node is removed from a specific attraction of the first Boolean network,
How to determine the control node of a Boolean network.
상기 처리부는,
상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하도록 되어 있고,
상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하도록 되어 있고, 그리고
상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하도록 되어 있으며,
상기 부울리언 네트워크는 세포의 동역학 시스템을 모델링한 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응하고,
상기 제어노드는 상기 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위해 섭동하는 제어목표가 되는 노드이며,
상기 초기상태는 상기 세포가 암세포인 상태이고, 상기 원하는 상태는 세포 사멸 상태이고,
상기 제1끌개유역은 상기 부울리언 네트워크가 가질 수 있는 상태들 중 소정의 제1끌개로 향하는 모든 상태천이경로에 포함되는 모든 상태들로 이루어진 집합이며, 그리고
상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는,
컴퓨팅 장치.A computing device comprising a communication interface and a processing unit for communicating with an external device by wire or wirelessly,
The processing unit,
Information about the structure of the Boolean network, information about the initial state of the Boolean network, and the desired first attractor basin that does not include the initial state among the attractors of the Boolean network from the external device through the communication interface It is to acquire information about the first attraction to which it belongs,
determine a boundary state of the first attraction basin from the initial state, and
Among the nodes of the Boolean network, when the boundary state and the initial state are compared with each other, nodes having different states are determined as control nodes,
The Boolean network is a model of a biomolecule signaling network modeling a dynamic system of a cell, and each node of the Boolean network corresponds to each molecule of the biomolecule signaling network,
The control node is a node that is a control target for perturbing the biomolecule signaling network to a desired state,
The initial state is a state in which the cell is a cancer cell, and the desired state is a cell death state,
The first attraction basin is a set of all states included in all state transition paths toward a predetermined first attraction among states that the Boolean network may have, and
The boundary state, among the states belonging to the first attracting basin, characterized in that it is a state having a minimum Hamming distance among the Hamming distances between the initial state and each state belonging to the first attracting basin,
computing device.
상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계;
상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하는 단계; 및
상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계
를 실행하도록 하는 프로그램이 기록되어 있는 컴퓨터 판독 가능한 논트랜지토리 저장장치로서,
상기 부울리언 네트워크는 세포의 동역학 시스템을 모델링한 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응하고,
상기 제어노드는 상기 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위해 섭동하는 제어목표가 되는 노드이며,
상기 초기상태는 상기 세포가 암세포인 상태이고, 상기 원하는 상태는 세포 사멸 상태이고,
상기 제1끌개유역은 상기 부울리언 네트워크가 가질 수 있는 상태들 중 소정의 제1끌개로 향하는 모든 상태천이경로에 포함되는 모든 상태들로 이루어진 집합이며, 그리고
상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는,
컴퓨터 판독 가능한 논트랜지토리 저장장치.The processing unit of the computing device including a communication interface and processing unit for communicating with an external device by wire or wirelessly,
Information about the structure of the Boolean network, information about the initial state of the Boolean network, and the desired first attractor basin that does not include the initial state among the attractors of the Boolean network from the external device through the communication interface Acquiring information about the first attraction to belong;
determining a boundary state of the first attraction basin from the initial state; and
determining nodes having different states as control nodes when the boundary state and the initial state are compared among the nodes of the Boolean network
A computer-readable non-transitory storage device in which a program to run is recorded,
The Boolean network is a model of a biomolecule signaling network modeling a dynamic system of a cell, and each node of the Boolean network corresponds to each molecule of the biomolecule signaling network,
The control node is a node that is a control target for perturbing the biomolecule signaling network to a desired state,
The initial state is a state in which the cell is a cancer cell, and the desired state is a cell death state,
The first attraction basin is a set of all states included in all state transition paths toward a predetermined first attraction among states that the Boolean network may have, and
The boundary state, among the states belonging to the first attracting basin, characterized in that it is a state having a minimum Hamming distance among the Hamming distances between the initial state and each state belonging to the first attracting basin,
Computer-readable, non-transitory storage.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190101194A KR102452629B1 (en) | 2019-08-19 | 2019-08-19 | 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 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190101194A KR102452629B1 (en) | 2019-08-19 | 2019-08-19 | 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 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210021790A KR20210021790A (en) | 2021-03-02 |
KR102452629B1 true KR102452629B1 (en) | 2022-10-11 |
Family
ID=75169633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190101194A KR102452629B1 (en) | 2019-08-19 | 2019-08-19 | 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 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102452629B1 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101483789B1 (en) * | 2012-09-05 | 2015-01-19 | 한국과학기술원 | Method for analyzing network characteristic and computer-readable medium and appratus for the same |
KR20170002060A (en) * | 2015-06-29 | 2017-01-06 | 삼성전자주식회사 | Method and apparatus for discovery target protein of targeted therapy |
KR102029297B1 (en) * | 2017-04-11 | 2019-10-07 | 한국과학기술원 | An optimized anti-cancer drug identification platform for personalized therapy |
KR102196064B1 (en) * | 2017-12-27 | 2020-12-29 | 한국과학기술원 | Method for estimating a signal flow in a complex signal transfer network using only the structure of the network and device for the same |
-
2019
- 2019-08-19 KR KR1020190101194A patent/KR102452629B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20210021790A (en) | 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 | |
Wan et al. | An improved hybrid genetic algorithm with a new local search procedure | |
US20140003228A1 (en) | Optimizations in Multi-Destination Tree Calculations for Layer 2 Link State Protocols | |
CN110288199A (en) | The method of product quality forecast | |
Yao et al. | Structural controllability of temporal networks with a single switching controller | |
WO2019014894A1 (en) | Link prediction method and device | |
JP6325762B1 (en) | Information processing apparatus, information processing method, and information processing program | |
Lung et al. | A new evolutionary approach to minimax problems | |
Xie et al. | How to stop consensus algorithms, locally? | |
KR102452629B1 (en) | 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 | |
KR102452630B1 (en) | An optimized method of searching a boundary state of a Boolean network with minimal complexity of distance calculation using structural information and basin information of the Boolean network | |
KR102320718B1 (en) | A method for identifying all basin states of an attractor in a Boolean network | |
Csar et al. | Computing the Schulze Method for Large-Scale Preference Data Sets. | |
CN109347680B (en) | Network topology reconstruction method and device and terminal equipment | |
CN111866078A (en) | Networking method and system of dynamic heterogeneous P2P network | |
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 | |
Dong et al. | Dynamic crossover and mutation genetic algorithm based on expansion sampling | |
Cervantes et al. | Toward self-adaptive ecosystems of services in dynamic environments | |
Jagota | Optimization by a Hopfield-style network | |
Abdou et al. | Trade-off between diversity and convergence in multi-objective genetic algorithms | |
CN117811992B (en) | Network bad information propagation inhibition method, device, equipment and storage medium |
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 |