Calibration of boolean network modeling biological process

JP2025010077APending Publication Date: 2025-01-20DASSAULT SYSTEMES SA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024106535
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-06
Filing Date
2024-07-02
Publication Date
2025-01-20

Smart Images

  • Figure 2025010077000001_ABST
    Figure 2025010077000001_ABST
Patent Text Reader

Abstract

To provide a computer-implemented method for calibrating Boolean network.SOLUTION: Boolean network has a Boolean function. The Boolean network models a biological process. The method includes a step of providing Boolean network. The method further includes a step of providing experimental data related to the biological process. The method further includes a step of calibrating the Boolean network according to experimental data. The calibration includes a step of converting the Boolean function into Zhegalkin polynomials. The calibration further includes a step of constructing a calibration Boolean proposition, on the basis of the Zhegalkin polynomials, the Boolean network, and the experimental data. The calibration Boolean proposition indicates a transition system of the Boolean network and the experimental data. The calibration further includes a step of applying a SAT solver to the calibration Boolean proposition.SELECTED DRAWING: Figure 22
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to the field of computer programs and systems, and more particularly to methods, systems, and programs for the calibration of Boolean networks that model biological processes. [Background technology]

[0002] Solutions exist for modeling biological systems. Modeling of biological systems is applied in the medical field, for example in the development of solutions, such as software or software-based solutions, to assist medical professionals in their work and / or in the development of new and / or improved drugs and / or vaccines. Examples of such applications include: modeling the spread of disease, the spread of cancer, immuno-monitoring, inflammatory responses, the effect of vaccines, etc. The underlying biological systems associated with the human body and its functions are typically highly complex. Figure 1 is an example of such a system, illustrating more specifically two cellular processes believed to be involved in Alzheimer's Disease: the formation of Amyloid plaques in the extracellular medium and the accumulation of Neurofibrillary Tangles within cells. See "History and progress of hypotheses and clinical trials for Alzheimer's disease, P.-P Liu et al., Signal Transduct. Target. Ther., 4(1), 2019."

[0003] A common approach for modeling biological systems involves the use of a system of differential equations of the following type:

[0004]

number

[0005] However, this requires identifying the function F, also called "flow" or "flux", that controls the evolution of the system, and the associated parameters β. For biological systems, and especially for the medical field, knowledge of this function and this parameters may be out of reach and / or modeling by differential systems may be infeasible. Indeed, the measurements required to obtain this knowledge may be out of reach.

[0006] However, biological systems, especially in the medical field, may contain regulatory and / or influencing networks, such as the sequential activation of biological entities (e.g. genes) in the triggering of Alzheimer's disease. Figure 2 illustrates such a network in a simplified and schematic illustration case, where entity Y activates entity X, entity X inhibits entity Z, and entities X and Z activate entity Y.

[0007] Such networks can be modeled by Boolean networks, as is well known in the art, which are generally represented as graphs and contain nodes (TRUE and FALSE logical states), edges (activation and inhibition), and logical operators.

[0008]

number

[0009] A Boolean network (defined by a function f) can be made to verify that its state X evolves in a synchronous update scheme as follows:

[0010]

number

[0011] For example, the Boolean network corresponding to Figure 2 is:

[0012]

number

[0013] It is.

[0014] Several databases exist that store regulatory pathways as biological entities along with their interactions, reactions, and relationships, including Reactome, KEGG, SIGNOR, Wikipathways, CellCollective, etc. These entities and interactions may not fit a Boolean formalism (e.g., ubiquitination or phosphorylation reactions in KEGG), but LIVING MAP (discussed below) provides a conversion tool to convert these pathways into Boolean networks. For example, Figure 3 shows a screenshot of a pathway derived from Wikipathways, depicting perturbations to host-cell autophagy induced by various proteins of SARS-CoV-2.

[0015] Modeling biological systems using Boolean networks makes it possible to perform simulations of a patient's physiology under various conditions, for example the effects of a drug or vaccine, or the propagation of a disease or the patient's biological response.

[0016] Living Map, an online tool for modeling Boolean networks, is provided by Dassault Systemes under the trademark BIOVIA. It offers: intuitive and easy-to-use tools for modeling biological Boolean networks, interaction nodes employing AND logic, customization of formulas for entities, experimentation under different conditions (initial state, gene knockout, drugs, etc.), annotation of entities and interactions, and (partially automated) aggregation of knowledge (e.g. Uniprot data, etc.). As outlined above, Living Map also includes a conversion tool that allows regulatory pathways stored as entities and interactions (as explained above) to be converted into Boolean networks.

[0017] Figures 4 to 16 show screenshots of various models of cell signaling pathways involved in Alzheimer's disease that were constructed using Living Map: calcium model (Figure 4), diabetes model (Figure 5), inflammation model (Figure 6), APOE model (Figure 7), mitophagy model (Figure 8), autophagy model (Figure 9), axonal transport model (Figure 10), other calcium model (Figure 11), ER-PSEN model (Figure 12), Wnt model (Figure 13), Fas model (Figure 14), RAGE model (Figure 15), and insulin model (Figure 16).

[0018] Figure 17 shows a screenshot of the SARS-Cov-2 MAPK signaling model (built using Living Map), which models how the coronavirus hijacks the cell machinery to remain invisible. Figure 18 shows a screenshot of the SARS-Cov-2 ER stress model (built using Living Map), which models how the coronavirus forces cells to make more and more copies of itself. Figure 19 shows a screenshot of the SARS-Cov-2 innate immunity and inflammation model (built using Living Map), which models how the virus disrupts innate immunity and causes a cytokine storm.

[0019] Boolean networks thus form a modern tool for modelling relevant biological systems in the medical field, e.g. in the development of software or software-based solutions to aid in the work of medical professionals and / or in the development of new and / or improved medicines and / or vaccines.

[0020] However, in this context, there is a need for improved solutions to the calibration of Boolean networks modeling biological processes. Calibration refers to the selection of Boolean functions matching a given data set. Summary of the Invention

[0021] There is therefore provided a computer-implemented method for calibration of a Boolean network. The Boolean network has Boolean functions. The Boolean network models a biological process. The method comprises providing a Boolean network. The method further comprises providing experimental data related to the biological process. The method further comprises calibrating the Boolean network according to the experimental data. The calibration comprises converting the Boolean functions into Zhegalkin polynomials. The calibration further comprises constructing a calibration Boolean proposition based on the Zhegalkin polynomials, the Boolean network, and the experimental data. The calibration Boolean proposition represents a transition system of the Boolean network and the experimental data. The calibration further comprises applying a SAT solver to the calibration Boolean proposition.

[0022] The method may include one or more of the following: The calibration Boolean propositions include a first Boolean proposition representing a transition system of the Boolean network and a second Boolean proposition representing experimental data, the calibration Boolean propositions further including: a third Boolean proposition expressing a stability constraint for the biological process, and / or A fourth Boolean proposition that penalizes true or false functions, and / or A fifth Boolean proposition expressing prior biological knowledge constraints. the stability constraints include at least one fixed point in the transition system and / or at least one cycle in the transition system, and / or the fourth Boolean proposition (also called a true or false penalty constraint) prevents loss of mechanistic information, and / or the prior biological knowledge constraints represent the Boolean network before calibration. -The SAT solver is a MaxSAT solver. The MaxSAT solver is a weighted MaxSAT solver, where each Boolean proposition in the calibration Boolean propositions corresponds to either one or more disjunctive hard clauses, each having a weight, or to the conjunction of one or more disjunctive soft clauses. -A first Boolean proposition is the conjunction of one or more disjunction hard clauses. The calibration Boolean proposition further includes a third Boolean proposition, the third Boolean proposition being a conjunction of one or more disjunction hard clauses. The calibration Boolean proposition further includes a fourth Boolean proposition and a fifth Boolean proposition. The second Boolean proposition includes a sub-proposition that represents a final state of the transition system and a sub-proposition that represents an initial state of the transition system, where the sub-proposition that represents the final state of the transition system is a logical product of one or more disjunction soft clauses having the greatest weight among all the soft clauses, and the sub-proposition that represents the initial state of the transition system is one or more disjunction soft clauses having the second greatest weight among all the sub-propositions, and the second Boolean proposition also includes one or more disjunction soft clauses that represent an intermediate point of the experimental data and have the third greatest weight among all the sub-propositions. The fourth Boolean proposition is the conjunction of one or more disjunction soft clauses, which has the fourth-highest weight among all soft clauses. o The fifth Boolean proposition is the conjunction of one or more disjunction soft clauses, which has the smallest weight among all the soft clauses. The method comprises a step of separating the weights of soft clauses corresponding to different Boolean propositions so that there is no overlap between these soft clauses. The separation of the weights is as follows: Each weight of a subclause that represents a final state of a transition system is strictly greater than the sum of the weights of all the subclause clauses that represent the initial states of the transition system. Each weight of the subclause that represents the initial state of the transition system can be strictly greater than the sum of all the weights of the subclause that represent intermediate points in the experimental data. The weight of each subclause that represents an intermediate point in the experimental data can be strictly greater than the sum of all the weights of the fourth clause. The weight of each fourth clause can be strictly greater than the sum of the weights of all the fifth clauses. -Experimental data are derived from physical measurements and / or observations of biological processes in the real world. -Biological processes correspond to a patient's physiological response to a medical event.

[0023] Further provided is a computer program comprising instructions for carrying out the method.

[0024] There is further provided a computer readable data storage medium having a computer program recorded thereon.

[0025] There is further provided a computer system comprising a processor coupled to a memory, the memory having a computer program recorded thereon. [Brief description of the drawings]

[0026] Non-limiting examples will now be described with reference to the accompanying drawings.

[0027] [Figure 1] FIG. 1 shows the background of the method. [Diagram 2] FIG. 1 shows the background of the method. [Figure 3A] FIG. 1 shows the background of the method. [Figure 3B] FIG. 1 shows the background of the method. [Figure 4] FIG. 1 shows the background of the method. [Diagram 5] FIG. 1 shows the background of the method. [Figure 6] FIG. 1 shows the background of the method. [Figure 7]FIG. 1 shows the background of the method. [Figure 8] FIG. 1 shows the background of the method. [Figure 9] FIG. 1 shows the background of the method. [Figure 10] FIG. 1 shows the background of the method. [Figure 11] FIG. 1 shows the background of the method. [Figure 12] FIG. 1 shows the background of the method. [Figure 13] FIG. 1 shows the background of the method. [Figure 14] FIG. 1 shows the background of the method. [Figure 15] FIG. 1 shows the background of the method. [Figure 16] FIG. 1 shows the background of the method. [Figure 17] FIG. 1 shows the background of the method. [Figure 18] FIG. 1 shows the background of the method. [Figure 19] FIG. 1 shows the background of the method. [Figure 20] FIG. 1 shows the background of the method. [Figure 21] FIG. 1 shows the background of the method. [Figure 22] FIG. 1 illustrates an example of a system. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0028] A computer-implemented method for calibration of a Boolean network is proposed. The Boolean network has a Boolean function. The Boolean network models a biological process. The method comprises providing a Boolean network. The method further comprises providing experimental data related to the biological process. The method further comprises calibrating the Boolean network according to the experimental data. The calibration comprises converting the Boolean function to a Tsegalkine polynomial. The calibration further comprises constructing calibration Boolean propositions based on the Tsegalkine polynomials, the Boolean network, and the experimental data. The calibration Boolean propositions represent a transition system of the Boolean network and the experimental data. The calibration further comprises applying a SAT solver to the calibration Boolean propositions.

[0029] This constitutes an improved solution for the calibration of biological Boolean networks, i.e. Boolean networks that model biological processes.

[0030] In fact, the initial (provided) Boolean network models a biological process, but with a certain level of generality. Such a network is indeed built using biological knowledge and models a biological process with a certain level of generality, but does not necessarily need to take into account a specific biological context related to, for example, a specific patient, a specific medical study, or a patient group. Therefore, the initial provided network may not be fully adapted or accurate to model a process in a specific experimental context (e.g., specific physiological and / or medical data (e.g., measurements, etc.) in a specific patient, a specific medical study, or a patient group). In fact, a large amount of prior knowledge about biological processes is directly available in the literature or in dedicated databases, or is aggregated in pathways and disease maps. Such knowledge may be used to build biological networks that mimic signaling, metabolic, and other molecular processes that typically underlie the behavior of proteins, genes, cytokines, cells, tissues, drug modes of action, and drug resistance. However, such knowledge often does not correspond to the exact same context that requires the construction of the model and is not necessarily exhaustive. A network built solely from that prior knowledge may miss some mechanisms, lack specificity, and only partially reproduce experimental observations. To address that limitation, specific data from that context can be integrated. This is what the present method does, by calibrating the Boolean network based on experimental data, i.e., specific experimental data from a specific experimental context.

[0031] In other words, given a provided Boolean network, the method modifies the Boolean functions of the network while preserving its initial topology, i.e. its nodes and their interconnections (regardless of the nature of their interactions), so that its continuous states reproduce as closely as possible the continuous states of the experimental data (e.g. up to the convergence or termination criteria of the SAT solver). This process is called calibration, which, as mentioned above, refers to the selection of Boolean functions that match a given data set (here experimental data). Thus, by performing this calibration, the method improves the Boolean network, making it more compatible with the specific experimental data (e.g. measured data). The calibrated network thereby models the biological process in the specific context captured by the experimental data with particular accuracy.

[0032] Here, the method not only performs the calibration but also performs the configuration in a resource-efficient manner. In fact, the main problem of the calibration is to calculate the number of nodes that depend on k variables:

[0033]

number

[0034] The fact is that there are k possible Boolean functions, and as k increases, their enumeration becomes practically unwieldy. For example, for a node with 5 parent nodes,

[0035]

number

[0036] There are Boolean functions. Therefore, a brute force approach of enumerating and testing all possible functions cannot be used. To solve this problem, the method first converts the Boolean functions into a simplified polynomial representation, the Tsegalkin polynomials (also called algebraic normal form). In other words, the method converts each Boolean function into an ordinary numeric polynomial, replaces the true and false values ​​of the Boolean function by 0 and 1 (integers modulo 2), and performs logical AND operations.

[0037]

number

[0038] and exclusive or

[0039]

number

[0040] as analogs of classical products and additions. In modulo 2 arithmetic,

[0041]

number

[0042] , the exponents become redundant and the only nonzero coefficient is 1. As a result, any Boolean function that depends on k variables, once transformed, becomes

[0043]

number

[0044] is completely defined by a set of binary coefficients, which are

[0045]

number

[0046] Instead of searching for a Boolean function that matches among these possibilities, the method

[0047]

number

[0048] This means reducing the search for the values ​​of coefficients (0 or 1). In other words, the calibration performed by the present method reduces the search to a combinatorial problem that becomes computable on available computer systems, whereas the problem of directly searching for a matching Boolean function without converting to Tsegalkine polynomials is incomputable on available computer systems.

[0049] Once the transformation is complete, the method applies a SAT solver to the propositions describing the network's transition system (where the Boolean functions appear in the polynomial form of the Boolean functions) and the calibration constraints extracted from the experimental data to find the matching coefficients. A SAT solver is a computer program that solves the SAT (or Boolean Satisfiability) problem, which is the problem of determining whether there exists an interpretation (i.e., a binary value assigned to each variable) that satisfies a given Boolean formula in CNF (Conjunctive Normal Form). A formula is in CNF if it is a conjunction or disjunctive clause, i.e., an AND in an OR group. Therefore, using a SAT solver in combination with the Zhegalkin transformation is particularly suitable and makes the method efficient. The method generates one or more interpretations (ie, values ​​for each one of the Zhegalkin coefficients of each function in the initial Boolean network) that are compatible with the provided experimental data.

[0050] The method is for the calibration of a Boolean network. The concept of a Boolean network is known and has been described previously. A Boolean network consists of a discrete set of Boolean variables, each of which is assigned a Boolean function (which may be different for each variable), which receives inputs from a subset of those variables and produces an output that determines the state of the variable to which the Boolean function is assigned. As mentioned above, a Boolean network is represented as a graph, with nodes (TRUE logical states, FALSE logical states), edges (activation, inhibition), and logical operators.

[0051]

number

[0052] and it can be seen that the state X evolves in a synchronous update scheme as follows (where f represents a function that defines the network):

[0053]

number

[0054] In other words, a Boolean network is defined by a set of nodes representing binary variables interconnected by a set of edges formalized as Boolean functions. By "calibration" it is meant that, given a provided Boolean network, the method modifies the Boolean functions of the network while preserving its initial topology, i.e. its nodes and their interconnections (irrespective of the nature of their interactions), so that its continuous states reproduce as closely as possible those of the experimental data. The inputs of the calibration (and of the method) are the provided Boolean network and the experimental data, and the output is a Boolean network calibrated according to the experimental data.

[0055] The Boolean network models a biological process, i.e., any biological process. The biological process may correspond to a patient's physiological response to a medical event. For example, the process may describe the progression of a disease (or a virus or any similar medical condition), or a particular progression phenomenon associated with the disease, and / or the patient's response to a disease-related event (e.g., an inflammatory response). The model may be, for example, any one of the models described above for Alzheimer's disease or coronavirus. Alternatively, it may describe the patient's response to a treatment, drug, or vaccine.

[0056] The method may be included in a therapy, drug, or vaccine monitoring and / or development process, for example, to develop new and / or improved therapies, drugs, or vaccines. In this case, the Boolean network may model the physiological response to the therapy, drug, or vaccine, and / or the physiological processes associated with the disease to be cured. This process may include one or more iterations (e.g., once per patient, etc.) of the following: - carrying out the method, optionally wherein experimental data is obtained by physical and / or physiological measurements on the patient. - running a simulation using the calibrated Boolean network, for example to evaluate the potential effectiveness of a treatment, drug, or vaccine. - Optionally, using the results of the simulation to develop and / or improve a treatment, drug or vaccine, for example physically developing and / or improving the treatment, drug or vaccine based on the results of the simulation.

[0057] The method comprises the step of providing (obtaining) a Boolean network. Providing a Boolean network may include building a network (e.g., from scratch) (e.g., using a Living Map) and / or modifying an already built network (e.g., using a Living Map). Providing a Boolean network may alternatively include obtaining (e.g., downloading) an existing Boolean network from a (e.g., remote) memory, server, or database in which the network has already been built and stored.

[0058] The method comprises a step of providing (obtaining) experimental data. Providing the experimental data may include retrieving (e.g. downloading) the experimental data from a (e.g. remote) memory, server or database in which the data is stored. The experimental data is experimental data related to a biological process and corresponds to experimental (e.g. physiological, medical, etc.) observations of the biological process (e.g. a patient, etc.). The experimental data may originate from physical measurements and / or observations (e.g. on a patient in a medical context) of the biological process in the real world. Providing the experimental data may alternatively include physically obtaining the experimental data or at least a part of it, for example by performing physiological and / or medical measurements on a patient using a suitable physical device.

[0059] Furthermore, in addition to providing the input, the method comprises a step of calibrating the Boolean network according to experimental data, i.e. preserving the initial topology of the network, i.e. its nodes and their interconnections (irrespective of the nature of their interactions), while modifying the Boolean functions of the network, so that its continuous states reproduce as closely as possible those of the experimental data.

[0060] This calibration involves converting the Boolean functions into Tsegalkine polynomials. Tsegalkine polynomials, also known as algebraic normal forms, are the representation of functions in Boolean algebra. They are polynomial rings over the integers modulo 2. The degeneracies resulting from modular arithmetic make Tsegalkine polynomials simpler than ordinary polynomials, which have binary coefficients and no exponents. The coefficients are binary because 1 is the only non-zero coefficient. In modulo 2 arithmetic,

[0061]

number

[0062] Therefore, the exponent is redundant.

[0063]

number

[0064] A polynomial such as xyz is congruent with xyz and can therefore be rewritten as xyz. There are many known methods for converting Boolean functions to Tsegalkin polynomials (by the indeterminate coefficients method, canonical disjunctive normal form, table method, Pascal method, summation method, Karnaugh map, or the method described at https: / / en.wikipedia.org / wiki / Zhegalkin_polynomial), and the conversion may implement any of these methods. The method may iterate over the variables of the network and iteratively convert all Boolean functions.

[0065] Here we will describe an example to illustrate the transformation. In this example, we have three variables A, B, and C, and a variable

[0066]

number

[0067] Consider a Boolean network with a Boolean expression for . This network can be represented as illustrated in Figure 20. The transformation can be iterated over the variables. In this case, only variable C has

[0068]

number

[0069] The associated Tsegalkine polynomial is

[0070]

number

[0071] It is.

[0072] The calibration includes constructing calibration Boolean propositions that represent the transition system of the Boolean network and the experimental data based on the Tsegalkine polynomials, the Boolean network, and the experimental data. The transition system is X t-1 From X t For each time point, where a time point corresponds to one update of the system,

[0073]

number

[0074] However, the continuous states of the numerical model (here represented by t) do not necessarily correspond to the temporal reality of the experimental data (e.g., 0, 3, 6, 24 h, etc.).

[0075]

number

[0076] allows us to integrate the possibility that real-time differences correspond to multiple updates of the model. The topology of the network is fully characterized by general Tsegaldkin polynomials in each variable, which remain the same for each time point. The construction of the calibration Boolean proposition is

[0077]

number

[0078] Based on the fact that the truth table of the topological condition is the same as that of the topological condition of the vertex, the topological condition of the vertex may be converted into the following proposition:

[0079]

number

[0080] It is.

[0081] The above proposition is called the first Boolean proposition. It is constructed by the calibration Boolean propositions and represents the transition system of the Boolean network, and thereby the topology of the Boolean network. The construction of the calibration Boolean proposition may also include a step of transforming the experimental data into a second Boolean proposition representing the experimental data. The second proposition may include Boolean sub-propositions representing final states of the transition system according to the experimental data, and / or Boolean sub-propositions representing initial states of the transition system according to the experimental data, and / or Boolean sub-propositions representing intermediate states according to the experimental data. For example, a variable A having the following experimental values ​​at four time points:

[0082]

number

[0083] is transformed into the following proposition:

[0084]

number

[0085] It is.

[0086] Returning to the example above for the network illustrated in Figure 20: The experimental data includes two time points corresponding to one update of the network; and - the experimental data for these two time points, with the suffix 0 indicating the first / initial time point and f indicating the second / last time point,

[0087]

number

[0088] If , then the calibration Boolean proposition is the first proposition for the transition system:

[0089]

number

[0090] And the following second proposition for the experimental data:

[0091]

number

[0092] Includes.

[0093] The calibration Boolean propositions may further include: - a third Boolean proposition expressing a stability constraint on the biological process, and / or - A fourth logical proposition that penalizes true or false functions, - A fifth Boolean proposition expressing a priori biological knowledge constraints.

[0094] A stability constraint is any constraint that expresses the stability of a transition system. A stability constraint may include at least one fixed point of the transition system and / or at least one cycle of the transition system. The concepts of fixed points and cycles are known in the field of Boolean networks, but the concepts are explained here. A Boolean network consisting of N nodes can be expressed as follows: NSince a system can only have one configuration, the pigeonhole principle implies that after enough iterations of the update schedule, the system must return to a previously visited configuration:

[0095]

number

[0096] It is.

[0097]

number

[0098] is the attractor of the Boolean network, p is the period of the attractor, and d can be thought of as the distance to the attractor.

[0099] If p=1, the attractor is a fixed point attractor. If p>1, the attractor is a cycle attractor with period p. The structure of the attractor depends only on the network topology, regardless of what initial state is considered. To have a periodic attractor, there must be cycles in the network. It can be shown that some attractors reflect many characteristics of real equilibrium states. Attractors can be single fixed points, in which case they have a state of the system, X.

[0100]

number

[0101] or, in the case of a cycle, has a period p of the cycle

[0102]

number

[0103] The third logical proposition is that in the fixed-point case,

[0104]

number

[0105] For cycles of length p or less,

[0106]

number

[0107] It could be.

[0108] The effect of this fourth Boolean proposition is that a single true Boolean function and a single false Boolean function are considered for a variable only if there are no other Boolean functions that meet the constraints mentioned above as well or better. The reason for this is the fact that both the true Boolean function and the false Boolean function do not contain mechanistic information about the contributions of the parent nodes of the variable.

[0109] The fifth Boolean proposition represents a priori biological knowledge constraints. The priori biological knowledge constraints may represent the Boolean network before calibration, or a function thereof. The priori biological knowledge constraints may be the Tseghalkin coefficients of the Boolean function in the network before calibration, which coefficients carry a degree of knowledge. Thus, the fifth Boolean proposition may be constructed in that the coefficients of the function in the uncalibrated network are true. For the example described above in connection with FIG. 20, the initial coefficients are

[0110]

number

[0111] (actually

[0112]

number

[0113] ), which is transformed into

[0114]

number

[0115] It is.

[0116] So, for example, the resulting calibration Boolean proposition for the previous example in FIG. 20, including the stability proposition, true / false Boolean function penalty, and prior knowledge, might be:

[0117]

number

[0118] It is.

[0119] Calibration further includes applying a SAT solver to the calibration Boolean propositions (where the Boolean functions appear in the polynomial form of the Boolean function) to find the matching coefficients. A SAT solver is a computer program that solves the SAT (or Boolean satisfiability) problem, which is the problem of determining whether there exists an interpretation (i.e., a binary value assigned to each variable) that satisfies a given Boolean formula in CNF (Conjunction Normal Form). A formula is in CNF if it has conjunction or disjunctive clauses, i.e., AND in OR groups. The method may include, if necessary, converting the Boolean formulation to CNF (e.g., using the Tseitin transformation or the Quine-McCluskey algorithm) before applying the SAT solver. The SAT solver may be a MaxSAT solver. A SAT solver aims to satisfy all clauses (propositions), whereas a MaxSAT solver aims to satisfy as many clauses (propositions) as possible. This can be advantageous for the method. In fact, in practice it may happen that not all constraints are satisfied simultaneously. The reason is as follows: -The use of real experimental data may be affected by measurement uncertainties, missing information, and inter-individual variability. -The data is averaged and binarized, resulting in loss of information. -Uncalibrated networks have a fixed topology, which is not necessarily correct (often based on generic but incomplete paths).

[0120] The MaxSAT solver may be a weighted MaxSAT solver. In this case, each Boolean proposition contained in the calibration Boolean proposition corresponds either to the conjunction of one or more disjunction hard clauses (i.e., mandatory to satisfy) or to the conjunction of one or more disjunction soft clauses, each having a weight. By "corresponds" we mean the following: Boolean propositions are here Boolean equations, and a system of Boolean equations is also considered as a Boolean equation. The clauses are disjunction clauses, and when a Boolean proposition is input to a MaxSAT solver (in CNF form), it becomes the conjunction of one or more disjunction clauses, each of which is hard or soft. The method may comprise a step of converting each proposition input to the MaxSAT solver into such a form (CNF form). Each soft clause is given a weight, and the solver aims to satisfy the clause that maximizes the sum of their weights.

[0121] The first Boolean proposition may be the conjunction of one or more disjunction hard clauses. In other words, the transition system, including the topology of the network, is fixed during calibration, and the associated constraints are explicitly marked as hard clauses (i.e., must be satisfied) for each time point, to be later constrained by experimental data.

[0122] The third Boolean proposition can be the conjunction of one or more disjunction hard clauses. Indeed, Dirichlet's box principle guarantees that the system will reach a stable state in less than 2n+1 steps (2n being the number of states of a system with N variables). To be able to reconcile this stable state with the experimental data, the stability constraint is explicitly added as a hard clause.

[0123] The second Boolean proposition may include a sub-proposition that represents a final state (attractor) of the transition system and / or a sub-proposition that represents an initial state of the transition system. The sub-proposition that represents the final state of the transition system may be the conjunction of one or more disjunction soft clauses with the highest weight among all soft clauses. In other words, the last time point takes precedence. The sub-proposition that represents the initial state of the transition system may be the conjunction of one or more disjunction soft clauses with the second highest weight among all soft clauses. This may be advantageous since the Living Map operates with a synchronous update scheme, so that the attractor reached is determined by the initial state of the system. Variables without experimental data may be set to 0 by default, so that the initial state is fully defined. The second Boolean proposition also includes a sub-proposition that represents an intermediate time point of the experimental data (i.e., does not include the initial and final states). This sub-proposition may be the conjunction of one or more disjunction soft clauses with the third highest weight.

[0124] The fourth Boolean proposition may be the conjunction of one or more disjunction soft clauses, which has the fourth highest weight among all soft clauses.

[0125] The fifth Boolean proposition may be the conjunction of one or more disjunction soft clauses, with the smallest weight among all soft clauses. In other words, biological information in the form of an uncalibrated Boolean function (i.e., the Tsegalkine coefficient) is considered only if all other constraints are equally satisfied.

[0126] The weights may be set by a user, for example, before applying the SAT solver, or may alternatively be fixed to establish a separation of weights of soft clauses corresponding to different Boolean propositions, so that there is no overlap between these soft clauses. In the latter case, each weight of a given proposition may be set to be greater than the sum of the weights of propositions with lower weights (i.e., less important), for example, equal to the sum of the weights + 1. The separation of weights may be as follows: -The weight of each sub-statement representing a final state of a transition system is strictly greater than the sum of the weights of all the sub-statements representing the initial states of the transition system. -Each weight of the sub-propositions representing the initial state of the transition system can be strictly greater than the sum of all the weights of the sub-propositions representing intermediate points in the experimental data. -The weight of each of the intermediate sub-propositions can be strictly greater than the sum of all the weights of the fourth proposition. -The weight of each fourth proposition can be strictly greater than the sum of the weights of each fifth proposition.

[0127] In the above, "each weight of a proposition" or "each weight of a sub-proposition" means each weight of the clause corresponding to the proposition / sub-proposition.

[0128] This can be written as follows (and implemented as above by adding 1 to each of the following sums):

[0129]

number

[0130] It is.

[0131] In the above, "initial functions" refers to the functions of the Boolean network as provided, i.e., before calibration. "Single Boolean" (i.e., single Boolean penalty) refers to the true and false functions covered by the fourth proposition.

[0132] This ensures that the method will, for example, prioritize interpretations that satisfy another initial state clause at the expense of all intermediate state clauses. Furthermore, unsatisfied clauses can be traced back to the constraint category they represent.

[0133] Application of a SAT solver (e.g., a weighted MaxSAT solver, etc.) then generates one or more interpretations (i.e., the values ​​of each Tsegalkin coefficient of each function in the provided Boolean network) that are equally compatible (i.e., have the same sum of weights) with the provided calibration constraints. The calibration may then convert these Tsegalkin coefficients back into Boolean expressions and appropriately update the Boolean network with the calibrated functions.

[0134] Five Boolean propositions included in the calibration Boolean proposition are described above. It should be understood that other constraints or sets of constraints can be added to the calibration Boolean proposition as one or more additional Boolean propositions, so long as that constraint or set of constraints can be translated into a selection of values ​​for a binary variable.

[0135] The inventors have tested an implementation of the method. In particular, a biological network constructed to model vaccine-induced inflammation and visualize abundance variations of associated cell types has been tested. The uncalibrated network contains 202 entities and 289 interactions. For the calibration process, the inventors used transcriptomic (for gene expression) and cytometry (for cell abundance) data (obtained during preclinical testing of the MVA vaccine and described in reference "Rosenbaum P et al. Immunol., 12:645210, 2021", which is incorporated herein by reference). The data was binarized, i.e., continuous expression measured over successive time points was assigned a value of 1 (meaning abundance for the cell type and expression for the gene) or 0 (meaning rarity for the cell type and non-expression for the gene). The resulting calibrated network contains 310 interactions and satisfies as much as possible the constraints associated with the experimental data. The results are illustrated in FIG. 21. State #6 is the final state of the model (reaching a stationary attractor). Both the initial and final states are in perfect agreement with the experimental data. For the transition states, only four of the output makers show differences between the simulation and experimental states. However, the calibrated functions are the most consistent functions with respect to the fixed parent nodes to which they are linked and their dynamics. Therefore, the network can be said to be properly calibrated.

[0136] The tests prove that the method provides an improved calibrated Boolean network and that the calibration provides the following advantages:

[0137] First, the method outputs all Boolean networks that are equally compatible with the topology given by the initial network, without requiring additional transformation or model checking steps.

[0138] Moreover, since the method converts the choice of the Boolean function assigned to each variable as an attribution of either 0 or 1 for a given number of parameters, this choice can be made with respect to any additional constraints, which can also be formalized as binary attributions. In the case of calibration of biological networks, these additional constraints always include (but are not limited to) binarized calibration data.

[0139] Moreover, the SAT problem is an old and very thoroughly studied problem in computer science. Several extensions of the problem have been defined and computationally efficient methods for solving them have been developed over the years. So-called SAT solvers can benefit from the method. In particular, one of the extensions, the weighted MaxSAT problem and its appropriate solvers, assigns a weight to each clause of a Boolean formula to be satisfied and aims to maximize the sum of the weights of the satisfied clauses, but not all clauses need to be satisfied. This problem allows the definition of a hierarchy between the clauses in the Boolean formula, i.e., in this case, a user-controlled prioritization of the constraints associated with the calibration process and the guarantee of always obtaining (one of) the most consistent networks.

[0140] Finally, if the problem to be solved is not subject to any constraints other than the transition system and the data, no assumptions are made regarding the form of the Boolean functions, thereby avoiding oversimplification of the network.

[0141] The method is computer-implemented. This means that the steps of the method (or substantially all steps) are performed by at least one computer, or any similar system. The steps of the method are therefore performed by a computer, possibly fully automatically or semi-automatically. In an embodiment, triggering of at least some steps of the method may be performed by user-computer interaction. The level of user-computer interaction required depends on the level of automation expected and may be balanced against the need to realize the user's wishes. In an embodiment, this level may be user-defined and / or predefined.

[0142] A typical example of a computer implementation of the method is to execute the method using a system adapted for this purpose. The system may comprise a processor coupled to a memory and a graphical user interface (GUI), the memory having recorded thereon a computer program including instructions for executing the method. The memory may also store a database. The memory is any hardware adapted for such storage and may include multiple physically distinct parts (e.g., a part for the program and possibly a part for the database, etc.).

[0143] FIG. 22 illustrates an example of a system, which is a client computer system, such as a user's workstation.

[0144] The client computer of this embodiment comprises a central processing unit (CPU) 1010 connected to an internal communication bus 1000, and a random access memory (RAM) 1070 also connected to the bus. The client computer further comprises a graphics processing unit (GPU) 1110 associated with a video random access memory 1100 connected to the bus. The video RAM 1100 is also known in the art as a frame buffer. A mass storage controller 1020 manages access to mass storage devices such as a hard drive 1030. Mass storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory including, by way of example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices, magnetic disks such as internal hard disks and removable disks, and magneto-optical disks. Any of the foregoing may be supplemented by or incorporated in specially designed ASICs (application specific integrated circuits). A network adapter 1050 manages access to a network 1060. The client computer may also include a tactile device 1090 such as a cursor control device, keyboard, or the like. The cursor control device is used on the client computer to allow the user to selectively place a cursor at any desired location on the display 1080. Furthermore, the cursor control device allows the user to select various commands and input control signals. The cursor control device includes a number of signal generating devices for inputting control signals into the system. Typically, the cursor control device is a mouse, and the buttons of the mouse are used to generate the signals. Alternatively or additionally, the client computer system may include a sensitive pad, and / or a sensitive screen.

[0145] The computer program may include instructions executable by a computer, which instructions include means for causing the system to carry out the method. The program may be recordable on any data storage medium, including the memory of the system. The program may be implemented, for example, in digital electronic circuitry, computer hardware, firmware, software, or a combination thereof. The program may be implemented as an apparatus, for example, an article tangibly embodied in a machine-readable storage device for execution by a programmable processor. The steps of the method may be executed by a programmable processor, which executes a program of instructions to perform the functions of the method by manipulating input data to generate output. Thus, the processor may be programmably coupled to receive data and instructions from the data storage system, at least one input device, and at least one output device, and to transmit data and instructions to the data storage system, at least one input device, and at least one output device. The application program may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language as appropriate. In either case, the language may be a compiled or interpreted language. The program may be a fully installed program or an update program. Application of the program on the system in any case results in instructions for carrying out the method. The computer program may alternatively be stored and executed on a server in a cloud computing environment, the server being in communication with one or more clients via a network. In such a case, a processing unit executes the instructions constituted by the program, thereby causing the method to be carried out on the cloud computing environment.

Claims

1. 1. A computer-implemented method for calibration of a Boolean network, the Boolean network having Boolean functions, the Boolean network modeling a biological process, the method comprising: providing: the Boolean network; experimental data relating to said biological process; providing a calibrating the Boolean network according to the experimental data, the calibration comprising: converting said Boolean functions into Tsegalkine polynomials; constructing calibrated Boolean propositions based on the Tsegalkine polynomials, the Boolean network, and the experimental data, the calibrated Boolean propositions representing a transition system of the Boolean network and the experimental data; applying a SAT solver to the calibrated Boolean propositions; Steps A method comprising:

2. The calibration Boolean propositions include a first Boolean proposition that represents a transition system of the Boolean network and a second Boolean proposition that represents the experimental data, the calibration Boolean propositions being: a third Boolean proposition expressing a stability constraint on the biological process; and / or A fourth Boolean proposition that penalizes true or false functions, and / or A fifth Boolean proposition expressing prior biological knowledge constraints The method of claim 1 further comprising:

3. 3. The method of claim 2, wherein the stability constraints include at least one fixed point of the transition system and / or at least one cycle of the transition system, and / or the fourth Boolean proposition represents preventing loss of mechanistic information, and / or the prior biological knowledge constraints represent the Boolean network before calibration.

4. The method of any one of claims 1 to 3, wherein the SAT solver is a MaxSAT solver.

5. 5. The method of claim 4, wherein the MaxSAT solver is a weighted MaxSAT solver, and each Boolean proposition included in the calibration Boolean propositions corresponds to either a conjunction of one or more disjunction hard clauses or a conjunction of one or more disjunction soft clauses, each having a weight.

6. The method of claim 5 in combination with claim 2, wherein the first Boolean proposition is a conjunction of one or more disjunction hard clauses.

7. The method of claim 6 , wherein the calibration Boolean proposition further comprises the third Boolean proposition, the third Boolean proposition being a conjunction of one or more disjunction hard clauses.

8. the calibration Boolean proposition further comprises the fourth Boolean proposition and the fifth Boolean proposition; the second Boolean proposition includes a sub-proposition that represents a final state of the transition system and a sub-proposition that represents an initial state of the transition system, the sub-proposition that represents the final state of the transition system being a logical product of one or more disjunction soft clauses having a maximum weight among all soft clauses, the sub-proposition that represents the initial state of the transition system being a logical product of one or more disjunction soft clauses having a second maximum weight among all soft clauses, the second Boolean proposition also includes one or more disjunction soft clauses that represent an intermediate point of the experimental data and have a third maximum weight among all soft clauses; the fourth Boolean proposition being a conjunction of one or more disjunction soft clauses having a fourth largest weight among all soft clauses; the fifth Boolean proposition is a conjunction of one or more disjunction soft clauses having a minimum weight among all soft clauses; The method according to claim 7.

9. 9. The method of claim 8, further comprising the step of separating weights of soft clauses corresponding to different Boolean propositions such that there is no overlap between these soft clauses.

10. The separation of the weights is as follows: a weight of each of the sub-clauses representing the final states of the transition system is strictly greater than the sum of the weights of all of the sub-clauses representing the initial states of the transition system; a weight of each of the sub-clauses representing the initial states of the transition system may be strictly greater than the sum of the weights of all of the sub-clauses representing the intermediate time points of the experimental data; each weight of the sub-statements representing the intermediate time points of the experimental data may be strictly greater than the sum of all weights of the fourth clause; the weight of each of said fourth proposition clauses may be strictly greater than the sum of the weights of all of said fifth proposition clauses; The method according to claim 9, wherein

11. The method of claim 1 , wherein the experimental data is derived from physical measurements and / or observations of the biological process in the real world.

12. 12. The method of claim 1, wherein the biological process corresponds to a physiological response of a patient to a medical event.

13. A computer program comprising instructions which, when executed by a computer system, cause the computer system to carry out a method according to any one of claims 1 to 12.

14. 14. A computer readable data storage medium having recorded thereon a computer program according to claim 13.

15. 14. A computer system including a processor coupled to a memory, the memory having recorded thereon the computer program of claim 13.