WO2006035618A1 - 生体シミュレーション装置およびプログラム - Google Patents

生体シミュレーション装置およびプログラム Download PDF

Info

Publication number
WO2006035618A1
WO2006035618A1 PCT/JP2005/017116 JP2005017116W WO2006035618A1 WO 2006035618 A1 WO2006035618 A1 WO 2006035618A1 JP 2005017116 W JP2005017116 W JP 2005017116W WO 2006035618 A1 WO2006035618 A1 WO 2006035618A1
Authority
WO
WIPO (PCT)
Prior art keywords
biological
class
information
instance
hierarchical structure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2005/017116
Other languages
English (en)
French (fr)
Inventor
Nobuaki Sarai
Akinori Noma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyoto University NUC
Original Assignee
Kyoto University NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyoto University NUC filed Critical Kyoto University NUC
Publication of WO2006035618A1 publication Critical patent/WO2006035618A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B5/00ICT specially adapted for modelling or simulations in systems biology, e.g. gene-regulatory networks, protein interaction networks or metabolic networks

Definitions

  • the present invention relates to a living body simulation apparatus and the like having a structure in which functions can be easily added and customized in response to elucidation of living body functions.
  • E-Cell is a biological simulation device that simulates cell functions.
  • Non-Patent Document 1 M. Tomita, K. Hashimoto, K. Takahashi, T. Shimizu, Y. Matsuzaki, F. Miyoshi, K. Saito, S. Tanida, K. Yugi, JC Ven ter, and CA Hutchison III, ⁇ E- CEI: software environment for whole ⁇ cell simulationj in Bioinformatics, vol. 15, no. 1, pp. 72 -84, 1999
  • Non-Patent Document 2 L. M. Loew, and J. C. Schaff: The Virtual Cell: a software environment for computational cell oiology, Trends Biotechnol, 19-10, 401/406, 2001
  • a first aspect of the present invention is a biological simulation apparatus that simulates a biological function by executing a biological function method, which is a method for simulating a biological function, based on object orientation.
  • a biological model structure information storage unit that stores biological model structure information having information indicating a biological instance that is a part belonging to one class and a hierarchical structure of the biological instance. It holds a method for processing variable information, which is information related to variables, and is a node class that is a class and a inheritance class of the node class, based on the biological model structure information in the biological model structure information storage unit!
  • a hierarchical structure configuration class that is a class provided with a method for configuring a hierarchical structure of the biological instance on the memory; and A response class that is a class inherited from the hierarchical structure class and has a biological function method as a method for simulating a biological function, and an inheritance destination of the hierarchical structure class
  • An analysis class that is a class and has a method for acquiring and analyzing the execution result of the biological function method, holds the analysis class, interprets the biological model structure information, and based on the hierarchical structure in the hierarchical structure configuration class Then, the biological instance is mapped on the memory, and the state of the biological instance is changed by executing the method of the class to which the biological instance belongs in a predetermined order, and the state of the changed biological instance is changed to the analysis class. Simulate biological functions by providing analysis methods and outputting analysis results It is a biological simulation device.
  • the second invention is a visitor class that holds a method for accessing one or more biological instances mapped on the memory and performing a predetermined process.
  • the analysis class method is the execution result of the visitor class method. It is a living body simulation device that acquires an analysis result based on a result.
  • the third invention is an inheritance class of the reaction class with respect to the first invention and the second invention, and receives information on a class having a predetermined biological function method as a method.
  • the living body simulation apparatus further comprising a receiving unit.
  • the fourth aspect of the invention relates to biological model structure information storing biological model structure information having two or more biological parts that are parts constituting the living body and information indicating a hierarchical structure of the biological parts.
  • a storage unit a variable information storage unit that stores variable information that is information related to a living body variable, an arithmetic expression storage unit that stores an arithmetic expression for simulating a biological function for each biological function,
  • a hierarchical structure configuration unit that configures a hierarchical structure of the two or more biological parts on a memory, and one or more biological components that configure the hierarchical structure
  • a biological simulation including an execution unit that executes one or more arithmetic expressions corresponding to biological functions realized by the biological component, and an output unit that outputs an analysis result based on the result executed by the execution unit Device.
  • the output unit acquires a state of the biological part after the execution unit executes an arithmetic expression;
  • This is a biological simulation apparatus including an output unit that outputs an analysis result based on a state.
  • the sixth invention in contrast to the fourth and fifth inventions, is characterized in that the arithmetic expression storage unit includes a biological function identifier that identifies a biological function and one or more arithmetic expressions.
  • a biological simulation apparatus further comprising: a reception unit that receives biological calculation formula information; and a storage unit that stores biological calculation formula information received by the reception unit in the calculation formula storage unit. .
  • the present invention can provide a living body simulation apparatus and the like that can easily incorporate the functions of a living body and the like that have been elucidated by the development of research in the field of medical biology.
  • FIG. 1 is a basic class hierarchy diagram of the biological simulation apparatus according to the present embodiment.
  • Figure 1 is a class diagram described in UML format.
  • This living body simulation apparatus has a structure based on object orientation. That is, this living body simulation apparatus has a class and an instance belonging to the class.
  • the class also holds executable functions (hereinafter referred to as “methods” where appropriate).
  • an instance is a part constituting a living body and a living body instance that is a part belonging to one class.
  • Examples of biological instances include extracellular fluids, cells, Na channels, and K channels. Extracellular fluid is an instance of fluid that is outside the cell.
  • a cell is an instance that represents a cell.
  • Na channel and K channel are instances indicating the Na channel and K channel of the cell, respectively.
  • the node class is the highest class.
  • the inheritance class of the node class is a hierarchical class.
  • inheritance class power analysis class and reaction class of hierarchical structure class is the highest class.
  • the node class is a class that holds a method for processing variable information that is information related to biological variables.
  • Node classes may belong to instances such as K (potassium ion), Na (sodium ion), and Vm (membrane potential).
  • methods that process variable information include a method that obtains the value of an instance (getValue ()) and a method that sets a value in an instance (variable) (setValue (value)).
  • ⁇ SetValue (value) '' is the value ⁇ value '' This method is set in the instance.
  • variable of the node class is used to read the biological instance force belonging to the reaction class and the analysis class during simulation and to write the value from the calculation method belonging to the biological instance.
  • the hierarchical structure class is an inheritance class of the node class, and is a class that holds a method for forming a hierarchical structure of biological instances on a memory based on biological model structure information.
  • the method of the hierarchical structure class performs the following processing.
  • the biological model structure information is information that includes a biological instance that is a component that constitutes a living organism, and that is a component that belongs to one class, and a hierarchical structure of the biological instance.
  • the biological model structure information is, for example, a file.
  • the biological model structure information is described in XML, for example. Note that XML is suitable for describing the hierarchical structure.
  • the method of the hierarchical structure class is a method for configuring a memory structure corresponding to the hierarchical structure of the instance included in the biological model structure information. More specifically, this is a method for allocating the pointer area of the parent instance constituting the hierarchical structure in memory. In the reserved pointer area, the address of the area where the instance of the child instance exists is stored.
  • the reaction class is an inheritance destination class of the hierarchical structure configuration class, and holds a class having a biological function method as a method indicating an arithmetic expression for simulating the biological function as an inheritance destination class.
  • This class holds a method that executes a biological function method.
  • it is necessary to define a class that holds biological function methods necessary for simulation of each biological function as the inheritance class of the reaction class.
  • the analysis class is a inheritance class of the hierarchical structure class, and holds a method for acquiring and analyzing the execution result of the biological function method.
  • the execution result of the biological function method is the state of the instance changed by the execution of the biological function method (for example, the value of the membrane potential or the K concentration).
  • the method for outputting the result in the analysis class may output the result in any manner. For example, one method outputs a graph of changes in membrane potential. Other methods output the change in potassium ion concentration as a numerical value. Further, Other methods visually output heart motion. Note that output is a concept that includes display on a display, printing on a printer, sound output, transmission to an external device, and the like.
  • the biological model structure information storage unit is a component that constitutes a living body, and stores biological model structure information having information indicating a biological instance that is a component belonging to one class and a hierarchical structure of the biological instance. Yes.
  • the biological model structure information is, for example, a file described in XML.
  • the biological model structure information storage unit is preferably a non-volatile recording medium, but can also be realized by a volatile recording medium.
  • the biological model structure information may be information (by communication, manual input, etc.) supplied to the external biological simulation apparatus.
  • the simulation apparatus includes the following execution unit.
  • the execution unit interprets the biological model structure information in the biological model structure information storage unit, maps the biological instances on the memory based on the hierarchical structure in the hierarchical structure configuration class, and performs a predetermined order (which is determined in advance).
  • the order of the biological instances can be determined by interpreting the calculation formula and executing the method of the class to which the biological instance belongs, and the state of the biological instance is changed and the state of the changed biological instance is analyzed.
  • the biological function is simulated by giving it to the class method and outputting the analysis result.
  • the method of the class to which the biological instance belongs is, for example, a method of the inheritance class of the reaction class, and is a biological function method that is a method for realizing a predetermined biological function.
  • the execution unit can usually be realized from an MPU or memory.
  • the processing procedure of the execution unit is usually realized by software, and the software is recorded on a recording medium such as a ROM. However, it may be realized by hardware (de
  • Step S201 The stored biological model structure information is read out.
  • Step S202 The biological model structure information read out in step S201 is interpreted (for example, XML data is parsed), and an instance hierarchical structure is constructed based on the biological model structure information. Data having such a hierarchical structure is placed on a memory. For the process of building the instance hierarchy, use the flowchart in Figure 3. And will be described in detail.
  • Step S203 The biological function instances belonging to all reaction classes are processed.
  • the instance processing is to execute the biological function method of the class to which the instance belongs and its upper class on the instance.
  • Biological functions are simulated by processing powerful instances. Integral calculations are performed for biological function formulas described by differential equations. Details of the processing of one instance will be explained using the flowchart of FIG.
  • Step S204 Output the processing results of the instances belonging to all analysis classes. Simulation results of biological functions can be obtained by powerful output.
  • Step S205 It is determined whether or not the force is sufficient to end the processing. If not, the process returns to step S203. Whether or not to end the process can be determined by detecting that the specified time has passed since the simulation was started, or by detecting that the end instruction has been received. Also good. In addition, the termination trigger does not matter.
  • the information of the predetermined time is included in the biological model structure information, for example.
  • Step S301 Assign 1 to the counter i.
  • Step S302 Biological model structure information (Here, for example, the biological model structure information is a file, and the definition of the instance information exists in each line.)
  • the definition of the first line is the instance. It is determined whether the information is the definition of the information. If the instance information is defined, the process proceeds to step S303. If the instance information is not defined, the process proceeds to step S308. If the definition of the definition instance of the i-th row is not defined, another process corresponding to the definition may be performed.
  • Step S303 The instance information that is information about the instance in the definition of the i-th row is acquired.
  • the instance information is, for example, an instance name and a class name.
  • the instance information is, for example, the value and unit of the variable when the instance is a variable.
  • Step S304 The instance information acquired in step S303 is set.
  • Instant The setting of the instance information is to write the instance information on the memory.
  • Step S305 It is determined whether or not a parent instance exists in the instance corresponding to the i-th row. If there is a parent instance, go to step S306, and if there is no parent instance, jump to step S308.
  • Step S306 A link area (child instance area) for setting the parent-child relationship is secured in the memory.
  • Step S307 The address on the memory where the parent instance is defined is written in the memory secured in step S306. This address write process establishes a link that defines the parent-child relationship.
  • Step S308 It is determined whether or not the force has been processed for all the rows of the biological model structure information. If not, go to step S309. If completed, return to upper function.
  • Step S309 The counter i is incremented by one.
  • Step S302 The counter i is incremented by one.
  • FIG. 4 is a flowchart for explaining details of processing of one instance.
  • Step S401 The class name to which the instance belongs is acquired.
  • Step S402 1 is assigned to the counter i.
  • Step S403 It is determined whether or not the i-th method exists in the class specified by the class name acquired in step S401 and a class higher than the class. If the i-th method exists, go to step S404, and if the i-th method does not exist, return to the upper function.
  • Step S404 The i-th method is executed for this instance.
  • Step S405 The counter i is incremented by one. Return to step S403.
  • a specific operation of the biological simulation apparatus in the present embodiment will be described.
  • FIG. 5 is data showing an example of biological model structure information.
  • the biological model structure information is described in XML, and is composed of one file.
  • FIG. 6 is a class hierarchy diagram to be simulated, in which some class definitions are added as inheritance classes of reaction classes to the basic class hierarchy diagram described in FIG.
  • the definition of the class to be used is normally received by the receiving unit and stored in the biological simulation apparatus.
  • 6 is a class diagram described in the format of UML as in FIG.
  • each box in FIG. 6 describes the class name (upper box) and the methods belonging to the class (lower box).
  • a class defined as a subclass of the reaction class holds one or more biological function methods that represent arithmetic expressions for simulating biological functions.
  • the cell class has a method that indicates an arithmetic expression (usually a differential equation) that indicates the behavior of the cell.
  • the channel class holds a method that shows an arithmetic expression (usually a differential equation) that shows the behavior common to all channels.
  • the Na channel and K channel hold a method that shows an arithmetic expression (usually a differential equation) that indicates the behavior unique to the Na channel or K channel! /.
  • the living body simulation apparatus starts the simulation in an energetic situation.
  • the trigger for starting the simulation may be an instruction from the user or an instruction from an external device.
  • the biological simulation apparatus reads the biological model structure information in FIG.
  • the biological simulation apparatus interprets biological model structure information. Since the biological model structure information is an XML file, the biological model structure information can be interpreted using the XML Versa technology.
  • the biological simulation apparatus obtains a hierarchical structure of instances shown in FIG.
  • the instance “extracellular fluid” owns (aggregates) the variables “Na” and “K” and the instance “cell”.
  • the instance “cell” has variables “Na”, “K”, “Vm” and instances “Na channel”, “K channel”. Instances form a hierarchical structure based on ownership (aggregation) relationships.
  • FIG. 7 a broken-line arrow indicates “reference”. That is, for example, the instance “Na channel” refers to the variables “Na” and “Vm”.
  • Figure 7 is an instance diagram described in the UML format.
  • “Na channel” on line 13 in the biological model structure information of FIG. 5 corresponds to “Na channel” of FIG.
  • 21 in the biological model structure information of Fig. 5 The line “K channel” corresponds to “K channel” in FIG.
  • “link name “ Nao '”” on the 17th line in the biological model structure information in FIG.
  • the biological simulation apparatus processes the four instances “extracellular fluid”, “cell”, “Na channel”, and “K channel”.
  • the processing order is, for example, from a deep instance. That is, the biological simulation apparatus processes instances in the order of “Na channel”, “K channel”, “cell”, and “extracellular fluid”. In this way, processing from the deep instance of the hierarchy in the hierarchical structure is because it is convenient to express the overall behavior as a set of behaviors of individual functional elements.
  • the instance process is to execute a method of a class to which the instance belongs and a higher class.
  • the biological simulation apparatus acquires and outputs the method execution result.
  • Such output processing is realized by methods of the analysis class.
  • FIG. 8 shows the value of “Vm” (membrane potential) possessed by the instance “cell”.
  • a living body simulation apparatus or the like that can easily incorporate a new living body function. Therefore, it enables highly accurate simulation that fits the actual situation, thereby facilitating future medical research and progress.
  • a new biological function can be simulated simply by providing a class for each biological function as a subclass of the reaction class and defining an arithmetic expression for simulating the biological function as a method of the class.
  • the method of the analysis class may be a visual output by force animation or the like that outputs the analysis result as a graph.
  • one or more living body instances mapped on the memory are accessed, a method for performing a predetermined process is held, a visitor class is further held, and an analysis class of The method may be a class hierarchy that obtains the analysis result based on the execution result of the visitor class method.
  • Figure 9 shows the class hierarchy. 9 is also a class diagram described in the format of UML, like FIG.
  • the biological simulation apparatus further includes a reception unit that is a successor class of the reaction class and receives information on a class having a predetermined biological function method as a method.
  • the structure which comprises may be sufficient.
  • the new class information input means may be anything such as a numeric keypad, keyboard, mouse, or menu screen.
  • the reception unit can be realized by a device driver for input means such as a numeric keypad or a keyboard, or control software for a menu screen.
  • the new class information includes class name, class method, and so on.
  • the processing in the present embodiment may be realized by software.
  • This software may be distributed by software download or the like.
  • this software may be recorded and distributed on a recording medium such as a CD-ROM.
  • the software that realizes the information processing apparatus in the present embodiment is the following program.
  • this program is a program that causes a computer to simulate a biological function, and is a component that constitutes a living organism.
  • the biological model Based on the biometric model structure information in the structure information storage unit, a hierarchical structure configuration class that is a class that holds a method for configuring the hierarchical structure of the biological instance in the memory, and inheritance of the hierarchical structure configuration class Calculation for simulating biological functions in the first class
  • a reaction class that holds a class having a biological function method that represents an expression as a method as an inheritance class, a class that holds a method that executes the biological function method, and an inheritance class of the hierarchical structure class
  • An analysis class holding a method for obtaining and outputting the execution result of the biological function method, interpreting the biological model structure information, and based on a hierarchical structure in the hierarchical structure class Mapping the biological instance on the memory; executing a method of the class to which the biological instance belongs; changing the state of the biological instance by executing the
  • the program accesses one or more biological instances mapped on the memory, holds a method for performing a predetermined process, further holds a visitor class, and the method of the analysis class includes the method
  • the analysis result may be acquired based on the execution result of the visitor class method.
  • the program may cause the computer to further execute a reception step of receiving information on a class that is an inheritance class of the reaction class and includes a predetermined biological function method as a method.
  • the operation result of the biological simulation apparatus is the same as that of the biological simulation apparatus of the first embodiment.
  • FIG. 10 shows a block diagram of the living body simulation apparatus.
  • the biological simulation apparatus includes a biological model structure information storage unit 101, a variable information storage unit 102, an arithmetic expression storage unit 103, a hierarchical structure configuration unit 104, an execution unit 105, an output unit 106, a reception unit 107, and an accumulation unit 108. Be prepared.
  • the output unit 106 includes a state acquisition unit 1061 and an output unit 1062.
  • the biological model structure information storage unit 101 stores biological model structure information having two or more biological parts that are parts constituting the living body and information indicating the hierarchical structure of the biological parts.
  • the biological model structure information is, for example, a file described in XML as described above.
  • the biological parts are, for example, cells and Na channels.
  • Biological model structure The information storage unit 101 is preferably a non-volatile recording medium, but can also be realized by a volatile recording medium.
  • variable information storage unit 102 stores variable information that is information related to biological variables. Variables include Na ions, K ions, membrane potential, and so on.
  • the variable information includes, for example, a variable name and a value set for the variable.
  • the variable information storage unit 102 is preferably a nonvolatile recording medium, but can also be realized by a volatile recording medium.
  • the arithmetic expression storage unit 103 stores an arithmetic expression for simulating a biological function for each biological function.
  • the arithmetic expression is mainly a differential equation.
  • the arithmetic expression storage unit 103 normally stores at least one biological function expression information having a biological function identifier for identifying a biological function and one or more arithmetic expressions.
  • the biological function identifier is, for example, “molecular function”.
  • An arithmetic expression is an expression for obtaining the function of a molecule in a living body. Such an arithmetic expression is usually an expression clarified by the development of research in the field of medical biology.
  • the arithmetic expression storage unit 103 is preferably a non-volatile recording medium, but can also be realized by a volatile recording medium.
  • the hierarchical structure configuration unit 104 configures a hierarchical structure of two or more biological parts on the memory based on the biological model structure information stored in the biological model structure information storage unit 101.
  • the biological model structure information defines the hierarchical structure of the biological parts
  • the hierarchical structure configuration unit 104 configures the hierarchical relationship of the biological parts on the memory based on the biological model structure information. More specifically, the hierarchical structure forming unit 104 performs processing for securing a pointer area memory for a link that connects the parent and child biological parts, for example.
  • the hierarchical structure forming unit 104 can be usually realized by an MPU, a memory, or the like.
  • the processing procedure of the hierarchical structure forming unit 104 is usually realized by software, and the software is recorded on a recording medium such as a ROM. However, it may be realized by hardware (a dedicated circuit).
  • the execution unit 105 executes, for one or more biological parts having a hierarchical structure, one or more arithmetic expressions corresponding to the biological functions realized by the biological parts. Normally, a biological part has a biological function identifier as its attribute value. The execution unit 105 acquires an arithmetic expression corresponding to the biological function identifier from the arithmetic expression storage unit 103. Then, the execution unit 105 executes the acquired arithmetic expression.
  • the output unit 106 outputs an analysis result based on the result executed by the execution unit 105.
  • the analysis result may be a result obtained by the execution unit 105 executing the arithmetic expression, or a result of the execution of the arithmetic expression (good or bad health, etc.). Further, the output form of the analysis result is not limited. Output is a concept that includes display on a display, printing on a printer, sound output, transmission to an external device, and so on.
  • the receiving unit 107 receives biological function expression information having a biological function identifier for identifying a biological function and one or more arithmetic expressions. Any input means for biometric expression information may be used, such as a numeric keypad, keyboard, mouse, or menu screen.
  • the accepting unit 107 can be realized by a device driver of an input means such as a numeric keypad or a keyboard, or control software for a menu screen.
  • the accepting unit 107 may accept biological model structure information.
  • the accumulation unit 108 accumulates the biometric expression information received by the reception unit 107 in the calculation expression storage unit 103.
  • the storage unit 108 can usually be realized by an MPU, a memory, or the like.
  • the processing procedure of the storage unit 108 is usually realized by software, and the software is recorded on a recording medium such as a ROM. However, it may be realized by hardware (dedicated circuit).
  • the storage unit 108 may store the biological model structure information received by the receiving unit 107 in the biological model structure information storage unit 101.
  • the state acquisition unit 1061 acquires the state of the biological part after the execution unit 105 executes the arithmetic expression.
  • the state of the biological part is a value of a variable that the biological part has.
  • the output unit 1062 outputs an analysis result based on the state acquired by the state acquisition unit 1061.
  • the output mode is not limited.
  • the output means 1062 outputs a change in membrane potential as a graph.
  • the output means 1062 outputs a change in potassium ion concentration as a numerical value. Further, the output means 1062 visually outputs the motion of the heart. Note that output is a concept that includes display on a display, printing on a printer, sound output, transmission to an external device, and the like.
  • Step S1101 The hierarchical structure forming unit 104 reads the biological model structure information stored in the biological model structure information storage unit 101.
  • Step S1102 The hierarchical structure forming unit 104 reads the biological model read in Step S1101.
  • the structure information is interpreted, and the hierarchical structure of the biological parts is constructed based on the biological model structure information. Data having such a hierarchical structure is placed on a memory. The process for constructing the hierarchical structure of biological parts will be described in detail with reference to the flowchart of FIG.
  • Step S1103 The number of biological parts is substituted for counter i, and 1 is substituted for counter j.
  • the number of biological parts can be acquired when the biological model structure information is interpreted in step S1102.
  • Step S1104 The j-th biological part is processed.
  • the processing of the biological part is to execute an arithmetic expression for performing a simulation of the biological function corresponding to the biological function identifier that is an attribute value of the biological part on the biological part.
  • Biological functions are simulated by powerful biocomponent processing. Details of the processing of the biological part will be described with reference to the flowchart of FIG. Note that biological parts that do not have an arithmetic expression are not subject to intensive processing.
  • Step S 1105 The output unit 106 outputs the processing result of the j-th biological part. Such output provides a simulation result of the biological function. At the time of such output, the state acquisition unit 1061 acquires the state of the biological part, and the output unit 1062 outputs the analysis result based on the state.
  • Step S 1106 Execution unit 105 determines whether or not it is the power to end the process. If not, go to step S1107. Whether or not to end the process may be determined by whether or not the force is a predetermined number of j, or may be determined by detecting that the force has passed a predetermined time after starting the simulation. It may be determined by detecting that an end instruction has been accepted. In addition, the termination trigger does not matter.
  • Step S1107 The execution unit 105 determines whether i and j are equal. If i and j are equal, go to step S1108, and if i and j are not equal, jump to step S1109.
  • Step S1108 The execution unit 105 substitutes 1 for j.
  • the process returns to step S1104.
  • Step S1109 The execution unit 105 increments j by 1. The process returns to step S1104.
  • Step S1201 The hierarchical structure forming unit 104 assigns 1 to the counter i.
  • Step S1202 The hierarchical structure forming unit 104 determines whether or not the definition of the i-th row of the biological model structure information (in this case, for example, a file) is the definition of the biological part information. I refuse. If it is the definition of the information on the biological part, the process goes to Step S1203, and if it is not the definition of the information on the biological part, the process jumps to Step S1208. If the definition of the i-th line is not the definition of the information on the bio-part, another process corresponding to the definition may be performed.
  • the definition of the i-th row of the biological model structure information in this case, for example, a file
  • the hierarchical structure forming unit 104 acquires biological part information that is information about the biological part in the definition of the i-th row.
  • the biological part information is, for example, the name of the biological part, a biological function identifier that identifies the function of the biological part, and the like. Further, the biological part information is, for example, the value of a variable when the biological part is a variable.
  • Step S1204 The hierarchical structure forming unit 104 sets the biological part information acquired in step S1203.
  • the setting of the biological part information is to write the biological part information on the memory.
  • Step S 1205 Hierarchical structure forming section 104 determines whether or not a parent biological part exists in the biological part corresponding to the i-th row. If the parent biological part exists, the process goes to step S 1206, and if the parent biological part does not exist, the process jumps to step S 1208.
  • the hierarchical structure forming unit 104 secures an area for setting a parent-child relationship (which may be a link area or an array area) in the memory.
  • Step S 1207 Hierarchical structure forming unit 104 sets a parent-child relationship of biological parts. Specifically, the hierarchical structure forming unit 104 writes, for example, the address on the memory in which the parent biological part is defined in the memory secured in step S1206. This address write process sets a link that defines the parent-child relationship.
  • Step S1208 The hierarchical structure forming unit 104 determines whether or not the force has been reached for the processing of all the rows of the biological model structure information. If not completed, go to Step S1209. If completed, return to upper function.
  • Step S1209 The hierarchical structure forming unit 104 increments the counter i by 1. Return to step S1202.
  • FIG. 13 is a flowchart for explaining details of the processing of the biological part.
  • the execution unit 105 acquires a biological function identifier that is an attribute value of the biological part.
  • Step S1302 The execution unit 105 assigns 1 to the counter i.
  • Step S1303 The execution unit 105 determines whether or not there is a force that has a square arithmetic expression among the arithmetic expressions corresponding to the biological function identifier acquired in Step S1301. If the i th arithmetic expression exists, the process goes to step S1304. If the i th arithmetic expression does not exist, the process returns to the upper function.
  • Step S1304 The execution unit 105 executes the i-th arithmetic expression for the living body part.
  • Step S1305) The execution unit 105 increments the counter i by 1.
  • FIG. 5 is data showing an example of biological model structure information.
  • FIG. 14 is an arithmetic expression management table stored in the arithmetic expression storage unit 103.
  • the arithmetic expression management table has one or more pieces of biometric expression information as a record.
  • the biometric expression information has a biofunction identifier and one or more arithmetic expressions.
  • the living body simulation apparatus starts the simulation in an energetic situation.
  • the trigger for starting the simulation may be an instruction from the user or an instruction from an external device.
  • the biological simulation apparatus reads the biological model structure information of FIG.
  • the biological simulation apparatus interprets biological model structure information.
  • the biological simulation apparatus obtains a hierarchical structure of biological parts shown in FIG.
  • the biological simulation apparatus processes the four biological parts “extracellular fluid”, “cell”, “Na channel”, and “K channel”.
  • the processing order is, for example, from biological parts that are deep in the hierarchy. That is, the biological simulation apparatus processes biological parts in the order of “Na channel”, “K channel”, “cell”, and “extracellular fluid”. In this way, processing from the depth V and biological parts in the hierarchical structure is convenient for expressing the entire behavior as a set of behaviors of individual functional elements.
  • the biological part processing This is to execute all the arithmetic expressions that are paired with the biological function identifier that is the attribute value of the biological part.
  • FIG. 8 shows the value of “Vm” (membrane potential) possessed by the instance “cell”.
  • the biological simulation apparatus in the present embodiment can be configured based on the object orientation in the first embodiment.
  • the variable information storage unit 102 corresponds to the node class of the first embodiment
  • the arithmetic expression storage unit 103 includes the reaction class
  • the hierarchical structure configuration unit 104 corresponds to the hierarchical structure class
  • the output unit 106 corresponds to the analysis class.
  • the output example of the biological simulation apparatus is not limited to a single graph, but may be an output as shown in FIG. 15, for example.
  • the software that realizes the biological simulation apparatus in the present embodiment is the following program.
  • this program stores, in a computer, biological model structure information having two or more biological parts that are parts constituting the living body and information indicating the hierarchical structure of the living body parts. Some variable information is stored, and an arithmetic expression for simulating a biological function is stored for each biological function. Based on the stored biological model structure information, the two or more biological parts are stored in the memory.
  • a hierarchical structure configuration step that configures a hierarchical structure of the above, and an execution step that executes, on one or more biological parts that configure the hierarchical structure, one or more arithmetic expressions corresponding to biological functions realized by the biological parts;
  • the output step is based on a state acquisition substep of acquiring a state of the biological part after executing the arithmetic expression in the execution step, and the state.
  • a sub-step for outputting the analysis result may be provided!
  • a reception step of receiving a biological function identifier for identifying a biological function and biological calculation formula information having one or more calculation formulas in the computer, and the biological calculation formula information received in the reception step This is a program for further executing an accumulation step for accumulating.
  • the computer that executes the program described in this specification may be a single computer or a plurality of computers. In other words, centralized processing or distributed processing may be performed.
  • each processing may be realized by centralized processing by a single device (system) or a plurality of devices. It may be realized by being distributed by.
  • the living body simulation apparatus has an effect that a new living body function can be easily incorporated, and is useful as a living body simulation apparatus.
  • FIG. 1 Basic class hierarchy diagram of biological simulation apparatus of embodiment 1
  • FIG. 2 is a flowchart for explaining the operation of the living body simulation apparatus.
  • FIG. 3 is a flowchart for explaining the operation of the living body simulation apparatus.
  • FIG. 4 is a flowchart for explaining the operation of the living body simulation apparatus.
  • FIG. 5 is a diagram showing an example of the same-body model structure information
  • FIG. 8 is a diagram showing an output example of the living body simulation apparatus
  • FIG. 10 is a block diagram of the biological simulation apparatus in the second embodiment.
  • FIG. 11 is a flowchart for explaining the operation of the living body simulation apparatus.
  • FIG. 12 is a flowchart for explaining the operation of the living body simulation apparatus.
  • FIG. 13 is a flowchart for explaining the operation of the living body simulation apparatus.
  • FIG. 15 is a diagram showing an output example of the living body simulation apparatus

Landscapes

  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Physiology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biotechnology (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】従来の生体シミュレーション装置において、想定されていない計算原理に基づく演算式を組み込むことは、極めて困難であった。 【解決手段】本発明は、生体機能をシミュレートするメソッドである生体機能メソッドをオブジェクト指向に基づいて実行して生体機能をシミュレーションする生体シミュレーション装置であって、医学生物学分野の研究の発展により解明された生体の機能等を示すクラスを追加するだけで、新たな生体機能のシミュレーションが容易に組み込むことができる構造を有する生体シミュレーション装置であって、かかる生体シミュレーション装置により、機能追加が極めて容易になった。

Description

明 細 書
生体シミュレーション装置およびプログラム
技術分野
[0001] 本発明は、生体機能の解明に対応して、機能追加やカスタマイズが極めて容易な 構造を有する生体シミュレーション装置等に関するものである。
背景技術
[0002] 従来の生体機能のシミュレーションを行うことができるシミュレーション装置として E
-Cell, Virtual Cellというシミュレーション装置がある(非特許文献 1、非特許文献 2参照)。 E— Cellは、細胞機能をシミュレートする生体シミュレーション装置である。
[0003] また、一般に、生体機能をコンピュータ上で再現、すなわち数理時空間に再現する ことを試みるとき、そこには異なる様々な概念に基づく計算式を統一して計算できる 手法が必要となる。たとえば、臓器としてみた心臓の流体力学、細胞の電気的活動、 細胞の収縮による力学的活動、もしくは細胞内の分子反応過程、質量作用の法則な ど非常に多くの様々な概念に基づく計算式が必要となる。
非特許文献 1 : M. Tomita, K. Hashimoto, K. Takahashi, T. Shimizu, Y. Matsuzaki, F. Miyoshi, K. Saito, S. Tanida, K. Yugi, J. C. Ven ter, and C. A. Hutchison III, 「E— CEI : software environment for whole― cell simulationj in Bioinformatics, vol. 15, no. 1, pp. 72 -84, 1999
非特許文献 2 : L. M. Loew, and J. C. Schaff :The Virtual Cell: a software environment for computational cell oiology, Trends Biotechnol, 19 - 10, 401/406, 2001
発明の開示
発明が解決しょうとする課題
[0004] し力しながら、従来の生体シミュレーション装置において、演算式の数が増すにつ れ、式の管理が困難であった。これは、従来の生体シミュレーション装置力 生体の 構造、特性に基づ ヽた数式管理構造を有して ヽなカゝつたカゝらである。 [0005] また、従来の生体シミュレーション装置において、想定されていない計算原理に基 づく演算式を組み込むことは、極めて困難であった。つまり、想定されていない計算 原理に基づく演算式を組み込むためには、膨大な量のプログラムの記述が必要であ つた o
一方、医学生物学分野の研究は、今後も大きな発展が見込まれており、それらの研 究成果 (演算式など)を容易に追加できる仕組みが極めて重要である。
課題を解決するための手段
[0006] 本第一の発明は、生体機能をシミュレートするメソッドである生体機能メソッドをォブ ジェタト指向に基づ 、て実行して生体機能をシミュレーションする生体シミュレーショ ン装置であって、生体を構成する部品であり、一のクラスに属する部品である生体ィ ンスタンスおよび当該生体インスタンスの階層構造を示す情報を有する生体モデル 構造情報を格納して 、る生体モデル構造情報格納部と、生体の変数に関する情報 である変数情報を処理するメソッドを保持して 、るクラスであるノードクラスと、ノードク ラスの継承先クラスであり、前記生体モデル構造情報格納部の生体モデル構造情報 に基づ!/ヽて、メモリ上に前記生体インスタンスの階層構造を構成するメソッドを具備し て ヽるクラスである階層構造構成クラスと、前記階層構造構成クラスの継承先クラスで あり、かつ、生体機能をシミュレートするための演算式を示す生体機能メソッドをメソッ ドとして具備するクラスである反応クラスと、前記階層構造構成クラスの継承先クラス であり、かつ、前記生体機能メソッドの実行結果を取得し、解析するメソッドを具備し ている解析クラスを保持し、前記生体モデル構造情報を解釈し、前記階層構造構成 クラスにおける階層構造に基づ ヽて生体インスタンスをメモリ上にマッピングし、所定 の順序で前記生体インスタンスが属するクラスのメソッドを実行することにより前記生 体インスタンスの状態を変化させ、当該変化した生体インスタンスの状態を前記解析 クラスのメソッドに与えて解析結果を出力することにより生体機能をシミュレーションす る生体シミュレーション装置である。
[0007] また、第二の発明は、第一の発明に対して、前記メモリ上にマッピングされた 1以上 の生体インスタンスにアクセスし、所定の処理を行うメソッドを保持して ヽる訪問者クラ スをさらに保持し、前記解析クラスのメソッドは、前記訪問者クラスのメソッドの実行結 果に基づいて解析結果を取得する生体シミュレーション装置である。
[0008] また、第三の発明は、第一の発明、第二の発明に対して、前記反応クラスの継承先 クラスであり、所定の生体機能メソッドをメソッドとして具備するクラスの情報を受け付 ける受付部をさらに具備する生体シミュレーション装置である。
[0009] かかる第一、第二、第三の発明の構成により、新たな生体の機能を容易に組み込 むことができる生体シミュレーション装置等を提供できる。また、オブジェクト指向モデ ルに従ったメソッド実行等により、さらに容易に、新たな生体の機能を組み込むことが できる。したがって、医学生物学分野の研究の発展により解明された生体の機能を 容易にシミュレーションできる。
[0010] また、第四の発明は、生体を構成する部品である 2以上の生体部品および当該生 体部品の階層構造を示す情報を有する生体モデル構造情報を格納している生体モ デル構造情報格納部と、生体の変数に関する情報である変数情報を格納して 、る変 数情報格納部と、生体機能をシミュレートする演算式を生体機能毎に格納して 、る 演算式格納部と、前記生体モデル構造情報格納部の生体モデル構造情報に基づ いて、メモリ上に前記 2以上の生体部品の階層構造を構成する階層構造構成部と、 前記階層構造を構成した 1以上の生体部品に対して、当該生体部品が実現する生 体機能に対応する 1以上の演算式を実行する実行部と、前記実行部が実行した結果 に基づいて、解析結果を出力する出力部を具備する生体シミュレーション装置である
[0011] また、第五の発明は、第四の発明に対して、前記出力部は、前記実行部が演算式 を実行した後の、前記生体部品の状態を取得する状態取得手段と、前記状態に基 づいて、解析結果を出力する出力手段を具備する生体シミュレーション装置である。
[0012] さらに、第六の発明は、第四、第五の発明に対して、前記演算式格納部は、生体機 能を識別する生体機能識別子と 1以上の演算式を有する生体演算式情報を 1以上 格納しており、生体演算式情報を受け付ける受付部と、前記受付部が受け付けた生 体演算式情報を前記演算式格納部に蓄積する蓄積部をさらに具備する生体シミュレ ーシヨン装置である。
[0013] かかる第四、第五、第六の発明の構成により、新たな生体の機能を容易に組み込 むことができる生体シミュレーション装置等を提供できる。したがって、医学生物学分 野の研究の発展により解明された生体の機能を容易にシミュレーションできる。
発明の効果
[0014] 本発明は、医学生物学分野の研究の発展により解明された生体の機能等を容易 に組み込むことができる生体シミュレーション装置等を提供できる。
発明を実施するための最良の形態
[0015] 以下、生体シミュレーション装置等の実施形態について図面を参照して説明する。
なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再 度の説明を省略する場合がある。
(実施の形態 1)
[0016] 図 1は、本実施の形態における生体シミュレーション装置の基本クラス階層図である 。図 1は、 UMLという書式で記述したクラス図である。本生体シミュレーション装置は 、オブジェクト指向に基づく構造を有している。つまり、本生体シミュレーション装置は 、クラスと、クラスに属するインスタンスを有する。また、クラスは、実行可能な関数 (以 下、適宜「メソッド」という。)を保持している。インスタンスは、ここでは、生体を構成す る部品であり、一のクラスに属する部品である生体インスタンスである。生体インスタン スの例として、細胞外液、細胞、 Naチャネル、 Kチャネルなどがある。細胞外液は、細 胞の外側にある液を示すインスタンスである。細胞は、細胞を示すインスタンスである 。 Naチャネル、 Kチャネルは、それぞれ、細胞が有する Naチャネル、 Kチャネルを示 すインスタンスである。
また、図 1において、ノードクラスは最上位クラスである。また、ノードクラスの継承先 クラスが階層構造クラスである。さらに、階層構造クラスの継承先クラス力 解析クラス と反応クラスである。
[0017] ノードクラスは、生体の変数に関する情報である変数情報を処理するメソッドを保持 しているクラスである。ノードクラスは、 K (カリウムイオン)、 Na (ナトリウムイオン)、 Vm (膜電位)などのインスタンスが属し得る。また、変数情報を処理するメソッドとして、ィ ンスタンスの値を取得するメソッド (getValue () )や、インスタンス(変数)に値を設定 するメソッド(setValue (value) )などがある。「setValue (value)」は、値「value」をィ ンスタンスに設定するメソッドである。
ノードクラスの変数は、シミュレーション時に反応クラス及び解析クラスに属する生体ィ ンスタンス力 読み出され、生体インスタンスに属する計算メソッドから値を書き込ま れるのに使われる。
[0018] 階層構造クラスは、ノードクラスの継承先クラスであり、生体モデル構造情報に基づ V、て、メモリ上に生体インスタンスの階層構造を構成するメソッドを保持して 、るクラス である。具体的には、階層構造クラスのメソッドは、以下のような処理を行う。つまり、 生体モデル構造情報は、生体を構成する部品であり、一のクラスに属する部品であ る生体インスタンスおよび当該生体インスタンスの階層構造を示す情報を有する情報 である。生体モデル構造情報は、例えば、ファイルである。また、生体モデル構造情 報は、例えば、 XMLで記述されている。なお、階層構造を記述するために XMLは 好適である。階層構造クラスのメソッドは、生体モデル構造情報が有するインスタンス の階層構造に対応したメモリ構造を構成するメソッド等である。さらに具体的には、階 層構造を構成する親のインスタンスのポインタ領域を、メモリ上に確保 (alloc)するメソ ッド等である。この確保したポインタ領域には、子のインスタンスの実体が存在する領 域のアドレスが格納される。
[0019] 反応クラスは、階層構造構成クラスの継承先クラスであり、かつ、生体機能をシミュ レートするための演算式を示す生体機能メソッドをメソッドとして具備するクラスを継承 先クラスとして保持し、当該生体機能メソッドを実行するメソッドを保持して ヽるクラス である。つまり、生体シミュレーションを行うためには、反応クラスの継承先クラスとして 、各生体機能のシミュレーションに必要な生体機能メソッドを保持して ヽるクラスが定 義されている必要がある。
[0020] 解析クラスは、階層構造構成クラスの継承先クラスであり、かつ、生体機能メソッドの 実行結果を取得し、解析するメソッドを保持している。生体機能メソッドの実行結果と は、生体機能メソッドの実行により、変化したインスタンスの状態 (例えば、膜電位の 値や、 K濃度など)である。解析クラスにおける、結果を出力するメソッドは、どのような 態様で結果を出力しても良い。例えば、あるメソッドは、膜電位の変化をグラフで出力 する。また、他のメソッドは、カリウムイオンの濃度の変化を数値で出力する。さらに、 他のメソッドは、心臓の動きを視覚的に出力する。なお、出力とは、ディスプレイへの 表示、プリンタへの印字、音出力、外部の装置への送信等を含む概念である。
[0021] 生体モデル構造情報格納部は、生体を構成する部品であり、一のクラスに属する 部品である生体インスタンスおよび当該生体インスタンスの階層構造を示す情報を有 する生体モデル構造情報を格納している。生体モデル構造情報は、上述したように、 例えば、 XMLで記述されたファイルである。生体モデル構造情報格納部は、不揮発 性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。なお、生体 モデル構造情報は、外部力 本生体シミュレーション装置に供給される(通信や手入 力等により)情報でも良い。
[0022] また、本シミュレーション装置は、以下の実行部を具備する。実行部は、生体モデ ル構造情報格納部の生体モデル構造情報を解釈し、階層構造構成クラスにおける 階層構造に基づいて生体インスタンスをメモリ上にマッピングし、所定の順序(予め決 められて ヽても良!ヽし、計算式を解釈して決める順序でも良 ヽ)で生体インスタンスが 属するクラスのメソッドを実行することにより記生体インスタンスの状態を変化させ、当 該変化した生体インスタンスの状態を解析クラスのメソッドに与えて解析結果を出力 することにより生体機能をシミュレーションする。生体インスタンスが属するクラスのメソ ッドは、例えば、反応クラスの継承先クラスのメソッドであり、所定の生体機能を実現 するメソッドである生体機能メソッドである。実行部は、通常、 MPUやメモリ等から実 現され得る。実行部の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェア は ROM等の記録媒体に記録されている。但し、ハードウ ア(専用回路)で実現して も良い。
以下、本生体シミュレーション装置の動作につ!、て図 2から図 4のフローチャートを 用いて説明する。
(ステップ S201)格納されて 、る生体モデル構造情報を読み出す。
[0023] (ステップ S202)ステップ S 201で読み出した生体モデル構造情報を解釈し (例え ば、 XMLデータをパージングし)、当該生体モデル構造情報に基づいて、インスタン スの階層構造を構築する。かかる階層構造のデータは、メモリ上に置かれている。な お、インスタンスの階層構造を構築する処理については、図 3のフローチャートを用 いて詳細に説明する。
[0024] (ステップ S203)全ての反応クラスに属する生体機能インスタンスの処理を行う。ィ ンスタンスの処理とは、インスタンスが属するクラスおよびその上位クラスの生体機能 メソッドをインスタンスに対して実行することである。力ゝ力ゝるインスタンスの処理により、 生体機能がシミュレーションされる。微分方程式で記述された生体機能計算式につ いては積分計算を行う。一インスタンスの処理の詳細は、図 4のフローチャートを用い て説明する。
(ステップ S204)全ての解析クラスに属するインスタンスの処理の結果を出力する。 力かる出力により、生体機能のシミュレーション結果が得られる。
[0025] (ステップ S205)処理を終了する力否かを判断する。処理を終了しないのであれば ステップ S203に戻る。処理を終了する力否かは、シミュレーションを開始して力も所 定の時間が経過したことを検出することにより判断しても良いし、終了指示を受け付 けたことを検知することにより判断しても良い。その他、終了のトリガーは問わない。な お、所定の時間の情報は、例えば、生体モデル構造情報に含まれている。
次に、インスタンスの階層構造を構築する処理について、図 3のフローチャートを用 いて説明する。
(ステップ S301)カウンタ iに 1を代入する。
[0026] (ステップ S302)生体モデル構造情報 (ここでは、例えば、生体モデル構造情報は ファイルであり、各行にインスタンスの情報の定義が存在する、とする。)の1番目の行 の定義がインスタンスの情報の定義であるカゝ否かを判断する。インスタンスの情報の 定義であればステップ S303に行き、インスタンスの情報の定義でなければステップ S 308に飛ぶ。なお、 i番目の行の定義力インスタンスの情報の定義でない場合、当該 定義に対応する別の処理を行っても良い。
[0027] (ステップ S303) i番目の行の定義の中の、インスタンスに関する情報であるインスタ ンス情報を取得する。インスタンス情報とは、例えば、インスタンスの名称、クラス名で ある。また、インスタンス情報とは、例えば、インスタンスが変数である場合には、変数 の値、単位である。
(ステップ S304)ステップ S 303で取得したインスタンス情報を設定する。インスタン ス情報の設定とは、メモリ上にインスタンス情報を書き込むことである。
[0028] (ステップ S305) i行目の行に対応するインスタンスに親のインスタンスが存在する か否かを判断する。親のインスタンスが存在すればステップ S306に行き、親のインス タンスが存在しなければステップ S 308に飛ぶ。
(ステップ S306)親子関係を設定するためのリンクの領域 (子インスタンスの領域) をメモリ上に確保する。
(ステップ S307)ステップ S306で確保したメモリ上に、親のインスタンスが定義され ているメモリ上のアドレスを書き込む。このアドレスの書き込み処理により、親子関係 を規定するリンクが設定される。
(ステップ S308)生体モデル構造情報のすべての行の処理が終了した力否かを判 断する。終了していなければステップ S309に行く。終了していれば、上位関数にリタ ーンする。
(ステップ S309)カウンタ iを 1、インクリメントする。ステップ S302に戻る。 図 4は、一つのインスタンスの処理の詳細について説明するフローチャートである。
(ステップ S401)インスタンスが属するクラス名を取得する。
(ステップ S402)カウンタ iに 1を代入する。
[0029] (ステップ S403)ステップ S401で取得したクラス名で特定されるクラス、および当該 クラスより上位のクラスに、 i番目のメソッドが存在するカゝ否かを判断する。 i番目のメソ ッドが存在すればステップ S404に行き、 i番目のメソッドが存在しなければ上位関数 にリターンする。
(ステップ S404)本インスタンスに対して、 i番目のメソッドを実行する。
(ステップ S405)カウンタ iを 1、インクリメントする。ステップ S403に戻る。 以下、本実施の形態における生体シミュレーション装置の具体的な動作について 説明する。
図 5は、生体モデル構造情報の例を示すデータである。本生体モデル構造情報は 、ここでは、 XMLで記述されており、一ファイルで構成されている。
[0030] また、図 6は、図 1で述べた基本クラス階層図に対して、反応クラスの継承先クラスと していくつかのクラスの定義を追加した、シミュレーション対象のクラス階層図である。 力かるクラスの定義は、通常、受付部が受け付け、生体シミュレーション装置に蓄積さ れる。なお、図 6も図 1と同様、 UMLという書式で記述したクラス図である。
[0031] 本クラス階層図において、図 6の各ボックスは、クラス名(ボックスの上段)とクラスに 属するメソッド (ボックスの下段)を記載している。また、反応クラスの下位クラスとして 定義されたクラスは、生体機能をシミュレートするための演算式を示す生体機能メソッ ドを 1以上保持している。セルクラスは、細胞の振る舞いを示す演算式 (通常、微分方 程式)を示すメソッドを保持している。また、チャネルクラスは、チャネル共通の振る舞 いを示す演算式を (通常、微分方程式)を示すメソッドを保持している。 Naチャネル、 Kチャネルは、 Naチャネルまたは Kチャネル特有の振る舞!/、を示す演算式を(通常、 微分方程式)を示すメソッドを保持して 、る。
力かる状況において、生体シミュレーション装置は、シミュレーションを開始する、と する。なお、シミュレーションを開始するトリガーは、ユーザからの指示や外部装置か らの指示等、問わない。
[0032] 次に、生体シミュレーション装置は、図 5の生体モデル構造情報を読み込む。そし て、生体シミュレーション装置は、生体モデル構造情報を解釈する。なお、生体モデ ル構造情報は XMLファイルであるので、 XMLのバーサの技術により生体モデル構 造情報の解釈は可能である。
[0033] そして、生体シミュレーション装置は、図 7に示すインスタンスの階層構造を得る。図 7において、インスタンス「細胞外液」は、変数「Na」「K」およびインスタンス「細胞」を 所有 (集約)する。また、インスタンス「細胞」は、変数「Na」「K」「Vm」およびインスタ ンス「Naチャネル」「Kチャネル」を所有する。インスタンスは、所有 (集約)関係により 、階層構造を構成する。
また、図 7において、破線の矢印は、「参照」を示す。つまり、例えば、インスタンス「 Naチャネル」は、変数「Na」「Vm」を参照する。なお、図 7は、 UMLという書式で記 述したインスタンス図である。
また、図 5の生体モデル構造情報中の 8行目「cell 11&1116 = 611"」の「じ611」は、図 7の「細胞」に該当する。また、図 5の生体モデル構造情報中の 13行目「Na chann el」は、図 7の「Naチャネル」に該当する。また、図 5の生体モデル構造情報中の 21 行目「K channel」は、図 7の「Kチャネル」に該当する。また、図 5の生体モデル構 造情報中の 16行目「く link name =〃Nai · ·」は、「Naチャネル」が、図 7の細胞 内の「Na」へのリンクを有することを示す。また、図 5の生体モデル構造情報中の 17 行目「く link name = "Nao ' '」は、「Naチャネル」が、図 7の細胞外の「Na」への リンクを有することを示す。また、図 5の生体モデル構造情報中の 24行目「く link n ame = "Ki ' '」は、「Kチャネル」が、図 7の細胞内の「Κ」へのリンクを有することを 示す。また、図 5の生体モデル構造情報中の 25行目「く link name = "Ko"- · ·」は 、「Kチャネル」が、図 7の細胞外の「Κ」へのリンクを有することを示す。また、図 7にお いて、表示の簡素化のために、図 5の 9行目、 18行目、 19行目、 26行目、および 27 行目の解釈結果の表示を省略して ヽる。
[0034] 次に、生体シミュレーション装置は、 4つのインスタンス「細胞外液」、「細胞」、「Na チャネル」、「Kチャネル」を処理する。処理する順序は、例えば、階層の深いインスタ ンスからである。つまり、生体シミュレーション装置は、「Naチャネル」、 「Kチャネル」、 「細胞」、「細胞外液」の順でインスタンスを処理する。このように、階層構造において 階層の深ヽインスタンスから処理するのは、個々の機能要素の振る舞 、の集合として 全体の振る舞いを表現するのに都合力 いからである。インスタンス処理は、上述し たように、当該インスタンスが属するクラスおよび上位のクラスのメソッドを実行すること である。
そして、生体シミュレーション装置は、メソッドの実行結果を取得し、出力する。かか る出力処理は、解析クラスのメソッドにより実現される。
その出力の一部を図 8に示す。図 8は、インスタンス「細胞」が所有している「Vm」( 膜電位)の値である。
[0035] 以上、本実施の形態によれば、新たな生体の機能を容易に組み込むことができる 生体シミュレーション装置等を提供できる。したがって、実情に合った精度の高いシミ ユレーシヨンを可能にし、それによつて将来の医学の研究と進歩が助長される。具体 的には、反応クラスの下位クラスとして、生体の機能毎にクラスを設け、当該クラスのメ ソッドとして、生体機能をシミュレーションする演算式を定義するだけで、新たな生体 の機能をシミュレーションできる。 なお、本実施の形態の具体例によれば、解析クラスのメソッドは、解析結果をグラフ 出力した力 アニメーション等による視覚的な出力等を行なうものでも良いことは言う までもない。
[0036] また、本実施の形態において、メモリ上にマッピングされた 1以上の生体インスタン スにアクセスし、所定の処理を行うメソッドを保持して 、る訪問者クラスをさらに保持し 、解析クラスのメソッドは、訪問者クラスのメソッドの実行結果に基づいて解析結果を 取得するようなクラス階層でも良い。力かるクラス階層図を図 9に示す。なお、図 9も図 1等と同様、 UMLという書式で記述したクラス図である。
[0037] また、本実施の形態にお!、て、生体シミュレーション装置は、反応クラスの継承先ク ラスであり、所定の生体機能メソッドをメソッドとして具備するクラスの情報を受け付け る受付部をさらに具備する構成でも良い。かかる場合、新たなクラスの情報の入力手 段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。受付 部は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の 制御ソフトウェア等で実現され得る。なお、新たなクラスの情報とは、クラス名、クラス のメソッド等である。
[0038] さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、この ソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェア を CD— ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細 書における他の実施の形態においても該当する。なお、本実施の形態における情報 処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプロ グラムは、コンピュータに、生体機能をシミュレーションさせるプログラムであって、生 体を構成する部品であり、一のクラスに属する部品である生体インスタンスおよび当 該生体インスタンスの階層構造を示す情報を有する生体モデル構造情報を格納して おり、生体の変数に関する情報である変数情報を処理するメソッドを保持しているクラ スであるノードクラスと、ノードクラスの継承先クラスであり、前記生体モデル構造情報 格納部の生体モデル構造情報に基づ 、て、メモリ上に前記生体インスタンスの階層 構造を構成するメソッドを保持して ヽるクラスである階層構造構成クラスと、前記階層 構造構成クラスの継承先クラスであり、かつ、生体機能をシミュレートするための演算 式を示す生体機能メソッドをメソッドとして具備するクラスを継承先クラスとして保持し 、当該生体機能メソッドを実行するメソッドを保持して ヽるクラスである反応クラスと、 前記階層構造構成クラスの継承先クラスであり、かつ、前記生体機能メソッドの実行 結果を取得し、出力するメソッドを保持している解析クラスを保持し、前記生体モデル 構造情報を解釈し、前記階層構造構成クラスにおける階層構造に基づいて生体イン スタンスをメモリ上にマッピングするステップと、前記生体インスタンスが属するクラス のメソッドを実行するステップと、当該メソッドの実行により前記生体インスタンスの状 態を変化させ、当該変化した生体インスタンスの状態を前記解析クラスのメソッドに与 えて解析結果を出力するステップを実行させるためのプログラム、である。
また、上記プログラムは、前記メモリ上にマッピングされた 1以上の生体インスタンス にアクセスし、所定の処理を行うメソッドを保持して 、る訪問者クラスをさらに保持し、 前記解析クラスのメソッドは、前記訪問者クラスのメソッドの実行結果に基づ 、て解析 結果を取得するものであっても良い。
また、上記プログラムは、コンピュータに、前記反応クラスの継承先クラスであり、所 定の生体機能メソッドをメソッドとして具備するクラスの情報を受け付ける受付ステップ をさらに実行させても良い。
(実施の形態 2)
[0039] 本実施の形態にぉ 、て、動作原理が、必ずしもオブジェクト指向に基づかな 、生体 シミュレーション装置について説明する。本実施の形態において、生体シミュレーショ ン装置の動作結果は、実施の形態 1の生体シミュレーション装置と同様である。
[0040] 図 10は、本生体シミュレーション装置のブロック図を示す。本生体シミュレーション 装置は、生体モデル構造情報格納部 101、変数情報格納部 102、演算式格納部 10 3、階層構造構成部 104、実行部 105、出力部 106、受付部 107、蓄積部 108を具 備する。出力部 106は、状態取得手段 1061、出力手段 1062を具備する。
[0041] 生体モデル構造情報格納部 101は、生体を構成する部品である 2以上の生体部品 および当該生体部品の階層構造を示す情報を有する生体モデル構造情報を格納し ている。生体モデル構造情報は、上述したように、例えば、 XMLで記述されたフアイ ルである。生体部品とは、例えば、細胞や Naチャネル等である。生体モデル構造情 報格納部 101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実 現可能である。
[0042] 変数情報格納部 102は、生体の変数に関する情報である変数情報を格納している 。変数とは、 Naイオンや Kイオンや膜電位等である。変数情報は、例えば、変数名や 変数に設定されている値などを有する。変数情報格納部 102は、不揮発性の記録媒 体が好適であるが、揮発性の記録媒体でも実現可能である。
[0043] 演算式格納部 103は、生体機能をシミュレートする演算式を生体機能毎に格納し ている。演算式は、主として微分方程式である。演算式格納部 103は、通常、生体機 能を識別する生体機能識別子と 1以上の演算式を有する生体演算式情報を 1以上 格納している。生体機能識別子は、例えば、「分子機能」であり。演算式は、生体内 の分子の機能を求める式である。かかる演算式は、通常、医学生物学分野の研究の 発展により解明された式である。演算式格納部 103は、不揮発性の記録媒体が好適 であるが、揮発性の記録媒体でも実現可能である。
[0044] 階層構造構成部 104は、生体モデル構造情報格納部 101の生体モデル構造情報 に基づいて、メモリ上に 2以上の生体部品の階層構造を構成する。生体モデル構造 情報は、生体部品の階層構造を定義しており、階層構造構成部 104は、かかる生体 モデル構造情報に基づいて生体部品の階層関係をメモリ上に構成する。具体的に は、階層構造構成部 104は、例えば、親子の生体部品間連結するリンクのためのポ インタ領域のメモリ確保の処理を行う。階層構造構成部 104は、通常、 MPUやメモリ 等から実現され得る。階層構造構成部 104の処理手順は、通常、ソフトウェアで実現 され、当該ソフトウェアは ROM等の記録媒体に記録されている。但し、ハードウェア( 専用回路)で実現しても良い。
[0045] 実行部 105は、階層構造を有する 1以上の生体部品に対して、当該生体部品が実 現する生体機能に対応する 1以上の演算式を実行する。通常、生体部品は、その属 性値として生体機能識別子を有する。実行部 105は、当該生体機能識別子に対応 する演算式を演算式格納部 103から取得する。そして、実行部 105は、取得した演 算式を実行する。
[0046] 出力部 106は、実行部 105が実行した結果に基づいて、解析結果を出力する。解 析結果とは、実行部 105が演算式を実行した結果でも良いし、演算式の実行結果の 良否 (健康か否力など)等でも良い。また、解析結果の出力態様は問わない。出力と は、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信等を含 む概念である。
[0047] 受付部 107は、生体機能を識別する生体機能識別子と 1以上の演算式を有する生 体演算式情報を受け付ける。生体演算式情報の入力手段は、テンキーやキーボード やマウスやメニュー画面によるもの等、何でも良い。受付部 107は、テンキーやキー ボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実 現され得る。なお、受付部 107は、生体モデル構造情報をも受け付けても良い。
[0048] 蓄積部 108は、受付部 107が受け付けた生体演算式情報を演算式格納部 103に 蓄積する。蓄積部 108は、通常、 MPUやメモリ等から実現され得る。蓄積部 108の 処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアは ROM等の記録媒体 に記録されている。但し、ハードウェア(専用回路)で実現しても良い。なお、蓄積部 1 08は、受付部 107が受け付けた生体モデル構造情報を生体モデル構造情報格納 部 101に蓄積しても良い。
状態取得手段 1061は、実行部 105が演算式を実行した後の、生体部品の状態を 取得する。生体部品の状態とは、生体部品が有する変数の値等である。
[0049] 出力手段 1062は、状態取得手段 1061が取得した状態に基づいて、解析結果を 出力する。出力の態様は問わない。例えば、出力手段 1062は、膜電位の変化をグ ラフで出力する。また、出力手段 1062は、カリウムイオンの濃度の変化を数値で出力 する。さらに、出力手段 1062は、心臓の動きを視覚的に出力する。なお、出力とは、 ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信等を含む概 念である。
以下、本生体シミュレーション装置がシミュレーションを行う際の動作について図 11 力 図 13のフローチャートを用いて説明する。
(ステップ S1101)階層構造構成部 104は、生体モデル構造情報格納部 101に格 納されて 、る生体モデル構造情報を読み出す。
[0050] (ステップ S1102)階層構造構成部 104は、ステップ S 1101で読み出した生体モデ ル構造情報を解釈し、当該生体モデル構造情報に基づいて、生体部品の階層構造 を構築する。かかる階層構造のデータは、メモリ上に置かれている。なお、生体部品 の階層構造を構築する処理については、図 12のフローチャートを用いて詳細に説明 する。
(ステップ S1103)カウンタ iに生体部品の数を代入し、カウンタ jに 1を代入する。な お、生体部品の数は、ステップ S1102において生体モデル構造情報を解釈した際 に取得され得る。
[0051] (ステップ S1104)j番目の生体部品の処理を行う。生体部品の処理とは、生体部品 の属性値である生体機能識別子に対応する生体機能のシミュレーションを行う演算 式を生体部品に対して実行することである。力かる生体部品の処理により、生体機能 がシミュレーションされる。生体部品の処理の詳細は、図 13のフローチャートを用い て説明する。なお、演算式を具備しない生体部品は力かる処理の対象にはならない
[0052] (ステップ S 1105)出力部 106は、 j番目の生体部の処理の結果を出力する。かかる 出力により、生体機能のシミュレーション結果が得られる。かかる出力の際に、状態取 得手段 1061が生体部品の状態を取得し、出力手段 1062が、当該状態に基づいて 、解析結果を出力する。
[0053] (ステップ S 1106)実行部 105は、処理を終了する力否かを判断する。処理を終了 しないのであればステップ S1107に行く。処理を終了するか否かは、所定の数の jで ある力否かにより判断しても良いし、シミュレーションを開始して力も所定の時間が経 過したことを検出することにより判断しても良いし、終了指示を受け付けたことを検知 することにより判断しても良い。その他、終了のトリガーは問わない。
(ステップ S1107)実行部 105は、 iと jが等しいか否かを判断する。 iと jが等しければ ステップ S 1108に行き、 iと jが等しくなければステップ S 1109に飛ぶ。
(ステップ S1108)実行部 105は、 jに 1を代入する。ステップ S1104に戻る。
(ステップ S1109)実行部 105は、 jを 1、インクリメントする。ステップ S1104に戻る。 次に、生体部品の階層構造を構築する処理について、図 12のフローチャートを用 いて説明する。 (ステップ S1201)階層構造構成部 104は、カウンタ iに 1を代入する。
[0054] (ステップ S1202)階層構造構成部 104は、生体モデル構造情報 (ここでは、例え ば、ファイルである)の i番目の行の定義が生体部品の情報の定義であるか否かを判 断する。生体部品の情報の定義であればステップ S1203に行き、生体部品の情報 の定義でなければステップ S 1208に飛ぶ。なお、 i番目の行の定義が生体部品の情 報の定義でな!ヽ場合、当該定義に対応する別の処理を行っても良 ヽ。
[0055] (ステップ S1203)階層構造構成部 104は、 i番目の行の定義の中の、生体部品に 関する情報である生体部品情報を取得する。生体部品情報とは、例えば、生体部品 の名称、生体部品の機能を識別する生体機能識別子等である。また、生体部品情報 とは、例えば、生体部品が変数である場合には、変数の値である。
(ステップ S1204)階層構造構成部 104は、ステップ S1203で取得した生体部品情 報を設定する。生体部品情報の設定とは、メモリ上に生体部品情報を書き込むことで ある。
[0056] (ステップ S1205)階層構造構成部 104は、 i行目の行に対応する生体部品に親の 生体部品が存在するか否かを判断する。親の生体部品が存在すればステップ S 120 6に行き、親の生体部品が存在しなければステップ S 1208に飛ぶ。
(ステップ S1206)階層構造構成部 104は、親子関係を設定するための領域 (リンク の領域でも、配列の領域等でも良い。)をメモリ上に確保する。
[0057] (ステップ S1207)階層構造構成部 104は、生体部品の親子関係を設定する。具 体的には、階層構造構成部 104は、例えば、ステップ S 1206で確保したメモリ上に、 親の生体部品が定義されているメモリ上のアドレスを書き込む。このアドレスの書き込 み処理により、親子関係を規定するリンクが設定される。
(ステップ S1208)階層構造構成部 104は、生体モデル構造情報のすべての行の 処理が終了した力否かを判断する。終了していなければステップ S1209に行く。終 了していれば、上位関数にリターンする。
(ステップ S1209)階層構造構成部 104は、カウンタ iを 1、インクリメントする。ステツ プ S1202に戻る。
図 13は、生体部品の処理の詳細について説明するフローチャートである。 (ステップ S1301)実行部 105は、生体部品の属性値である生体機能識別子を取 得する。
(ステップ S1302)実行部 105は、カウンタ iに 1を代入する。
[0058] (ステップ S1303)実行部 105は、ステップ S1301で取得した生体機能識別子に対 応する演算式の中で、潘目の演算式が存在する力否かを判断する。 i番目の演算式 が存在すればステップ S1304に行き、 i番目の演算式が存在しなければ上位関数に リターンする。
(ステップ S1304)実行部 105は、本生体部品に対して、 i番目の演算式を実行する
(ステップ S1305)実行部 105は、カウンタ iを 1、インクリメントする。
以下、本実施の形態における生体シミュレーション装置の具体的な動作について 説明する。
[0059] 図 5は、生体モデル構造情報の例を示すデータである。図 14は、演算式格納部 10 3が格納している演算式管理表である。演算式管理表は、 1以上の生体演算式情報 をレコードとして有する。生体演算式情報は、生体機能識別子と 1以上の演算式を有 する。
力かる状況において、生体シミュレーション装置は、シミュレーションを開始する、と する。なお、シミュレーションを開始するトリガーは、ユーザからの指示や外部装置か らの指示等、問わない。
次に、生体シミュレーション装置は、図 5の生体モデル構造情報を読み込む。そし て、生体シミュレーション装置は、生体モデル構造情報を解釈する。
そして、生体シミュレーション装置は、図 7に示す生体部品の階層構造を得る。
[0060] 次に、生体シミュレーション装置は、 4つの生体部品「細胞外液」、「細胞」、「Naチヤ ネル」、「Kチャネル」を処理する。処理する順序は、例えば、階層の深い生体部品か らである。つまり、生体シミュレーション装置は、「Naチャネル」、「Kチャネル」、「細胞 」、「細胞外液」の順で生体部品を処理する。このように、階層構造において階層の深 V、生体部品から処理するのは、個々の機能要素の振る舞 、の集合として全体の振る 舞いを表現するのに都合がよいからである。生体部品処理は、上述したように、当該 生体部品の属性値である生体機能識別子と対になる演算式をすベて実行することで ある。
そして、生体シミュレーション装置は、演算式の実行結果を取得し、出力する。 その出力の一部を図 8に示す。図 8は、インスタンス「細胞」が所有している「Vm」( 膜電位)の値である。
[0061] 以上、本実施の形態によれば、新たな生体の機能を容易に組み込むことができる 生体シミュレーション装置等を提供できる。したがって、実情に合った精度の高いシミ ユレーシヨンを可能にし、それによつて将来の医学の研究と進歩が助長される。
[0062] なお、本実施の形態における生体シミュレーション装置は、実施の形態 1における オブジェクト指向に基づいて構成できることは言うまでもない。かかる場合、変数情報 格納部 102は実施の形態 1のノードクラスに対応し、演算式格納部 103は反応クラス を含み、階層構造構成部 104は階層構造クラスに対応し、出力部 106は解析クラス に対応する。
また、生体シミュレーション装置の出力例は、一つのグラフのみに限らず、例えば、 図 15に示すような出力でも良いことは言うまでもない。
[0063] また、本実施の形態における生体シミュレーション装置を実現するソフトウェアは、 以下のようなプログラムである。つまり、このプログラムは、コンピュータに、生体を構 成する部品である 2以上の生体部品および当該生体部品の階層構造を示す情報を 有する生体モデル構造情報を格納しており、生体の変数に関する情報である変数情 報を格納しており、生体機能をシミュレートする演算式を生体機能毎に格納しており 、格納されている生体モデル構造情報に基づいて、メモリ上に前記 2以上の生体部 品の階層構造を構成する階層構造構成ステップと、前記階層構造を構成した 1以上 の生体部品に対して、当該生体部品が実現する生体機能に対応する 1以上の演算 式を実行する実行ステップと、前記実行ステップで実行した結果に基づいて、解析結 果を出力する出力ステップを実行させるためのプログラム、である。
[0064] また、上記プログラムにお 、て、前記出力ステップは、前記実行ステップで演算式 を実行した後の、前記生体部品の状態を取得する状態取得サブステップと、前記状 態に基づ 、て、解析結果を出力するサブステップを具備しても良!、。 [0065] さらに、上記プログラムにおいて、コンピュータに、生体機能を識別する生体機能識 別子と 1以上の演算式を有する生体演算式情報を受け付ける受付ステップと、前記 受付ステップで受け付けた生体演算式情報を蓄積する蓄積ステップをさらに実行さ せるためのプログラム、である。
なお、本明細書で述べたプログラムを実行するコンピュータは、単数であってもよく 、複数であってもよい。すなわち、集中処理を行ってもよぐあるいは分散処理を行つ てもよい。
[0066] また、上記実施の形態にお!、て、各処理 (各機能)は、単一の装置 (システム)によ つて集中処理されることによって実現されてもよぐあるいは、複数の装置によって分 散処理されることによって実現されてもょ 、。
本発明は、以上の実施の形態に限定されることなぐ種々の変更が可能であり、そ れらも本発明の範囲内に包含されるものであることは言うまでもない。
産業上の利用可能性
[0067] 以上のように、本発明に力かる生体シミュレーション装置は、新たな生体の機能を 容易に組み込むことができると!/、う効果を有し、生体シミュレーション装置として有用 である。
図面の簡単な説明
[0068] [図 1]実施の形態 1の生体シミュレーション装置の基本クラス階層図
[図 2]同生体シミュレーション装置の動作について説明するフローチャート
[図 3]同生体シミュレーション装置の動作について説明するフローチャート
[図 4]同生体シミュレーション装置の動作について説明するフローチャート
[図 5]同生体モデル構造情報の例を示す図
[図 6]同シミュレーション対象のクラス階層図
[図 7]同インスタンスの階層構造を示す図
[図 8]同生体シミュレーション装置の出力例を示す図
[図 9]同生体シミュレーション装置のクラス階層図
[図 10]実施の形態 2の生体シミュレーション装置のブロック図
[図 11]同生体シミュレーション装置の動作について説明するフローチャート [図 12]同生体シミュレーション装置の動作について説明するフローチャート [図 13]同生体シミュレーション装置の動作について説明するフローチャート [図 14]同演算式管理表を示す図
[図 15]同生体シミュレーション装置の出力例を示す図

Claims

請求の範囲
[1] 生体機能をシミュレートするメソッドである生体機能メソッドをオブジェクト指向に基づ いて実行して生体機能をシミュレーションする生体シミュレーション装置であって、 生体を構成する部品であり、一のクラスに属する部品である生体機能インスタンスお よび当該生体機能インスタンスの階層構造を示す情報を有する生体モデル構造情 報を格納して!/、る生体モデル構造情報格納部と、
生体の変数に関する情報である変数情報を処理するメソッドを保持しているクラスで あるノードクラスと、
ノードクラスの継承先クラスであり、前記生体モデル構造情報格納部の生体モデル構 造情報に基づいて、メモリ上に前記生体インスタンスの階層構造を構成するメソッドを 保持して!/ヽるクラスである階層構造構成クラスと、
前記階層構造構成クラスの継承先クラスであり、かつ、生体機能をシミュレートするた めの演算式を示す生体機能メソッドをメソッドとして具備するクラスである反応クラスと 前記階層構造構成クラスの継承先クラスであり、かつ、前記生体機能メソッドの実行 結果を取得し、解析するメソッドを具備して ヽる解析クラスを保持し、
前記生体モデル構造情報を解釈し、前記階層構造構成クラスにおける階層構造に 基づ ヽて生体インスタンスをメモリ上にマッピングし、前記生体インスタンスが属するク ラスのメソッドを実行することにより前記生体インスタンスの状態を変化させ、当該変 化した生体インスタンスの状態を前記解析クラスのメソッドに与えて解析結果を出力 することにより生体機能をシミュレーションする生体シミュレーション装置。
[2] 前記メモリ上にマッピングされた 1以上の生体インスタンスにアクセスし、所定の処理 を行うメソッドを保持している訪問者クラスをさらに保持し、
前記解析クラスのメソッドは、前記訪問者クラスのメソッドの実行結果に基づ 、て解析 結果を取得する請求項 1記載の生体シミュレーション装置。
[3] 前記反応クラスの継承先クラスであり、所定の生体機能メソッドをメソッドとして具備す るクラスの情報を受け付ける受付部をさらに具備する請求項 1または請求項 2記載の 生体シミュレーション装置。
[4] 生体を構成する部品である 2以上の生体部品および当該生体部品の階層構造を示 す情報を有する生体モデル構造情報を格納している生体モデル構造情報格納部と 生体の変数に関する情報である変数情報を格納している変数情報格納部と、 生体機能をシミュレートする演算式を生体機能毎に格納している演算式格納部と、 前記生体モデル構造情報格納部の生体モデル構造情報に基づ!、て、メモリ上に前 記 2以上の生体部品の階層構造を構成する階層構造構成部と、
前記階層構造を構成した 1以上の生体部品に対して、当該生体部品が実現する生 体機能に対応する 1以上の演算式を実行する実行部と、
前記実行部が実行した結果に基づいて、解析結果を出力する出力部を具備する生 体シミュレーション装置。
[5] 前記出力部は、
前記実行部が演算式を実行した後の、前記生体部品の状態を取得する状態取得手 段と、
前記状態に基づいて、解析結果を出力する出力手段を具備する請求項 4記載の生 体シミュレーション装置。
[6] 前記演算式格納部は、生体機能を識別する生体機能識別子と 1以上の演算式を有 する生体演算式情報を 1以上格納しており、
生体演算式情報を受け付ける受付部と、
前記受付部が受け付けた生体演算式情報を前記演算式格納部に蓄積する蓄積部 をさらに具備する請求項 4または請求項 5記載の生体シミュレーション装置。
[7] コンピュータに、
生体機能をシミュレーションさせるプログラムであって、
生体を構成する部品であり、一のクラスに属する部品である生体インスタンスおよび 当該生体インスタンスの階層構造を示す情報を有する生体モデル構造情報を格納し ており、
生体の変数に関する情報である変数情報を処理するメソッドを保持しているクラスで あるノードクラスと、 ノードクラスの継承先クラスであり、前記生体モデル構造情報格納部の生体モデル構 造情報に基づいて、メモリ上に前記生体インスタンスの階層構造を構成するメソッドを 保持して!/ヽるクラスである階層構造構成クラスと、
前記階層構造構成クラスの継承先クラスであり、かつ、生体機能をシミュレートするた めの演算式を示す生体機能メソッドをメソッドとして具備する反応クラスと、 前記階層構造構成クラスの継承先クラスであり、かつ、前記生体機能メソッドの実行 結果を取得し、解析するメソッドを具備して ヽる解析クラスを保持し、
前記生体モデル構造情報を解釈し、前記階層構造構成クラスにおける階層構造に 基づいて生体インスタンスをメモリ上にマッピングするステップと、
前記生体インスタンスが属するクラスのメソッドを実行するステップと、
当該メソッドの実行により前記生体インスタンスの状態を変化させ、当該変化した生 体インスタンスの状態を前記解析クラスのメソッドに与えて解析結果を出力するステツ プを実行させるためのプログラム。
[8] 前記メモリ上にマッピングされた 1以上の生体インスタンスにアクセスし、所定の処理 を行うメソッドを保持している訪問者クラスをさらに保持し、
前記解析クラスのメソッドは、前記訪問者クラスのメソッドの実行結果に基づ 、て解析 結果を取得する請求項 7記載のプログラム。
[9] コンピュータに、
前記反応クラスの子クラスであり、所定の生体機能メソッドをメソッドとして具備するク ラスの情報を受け付ける受付ステップをさらに実行させる請求項 7または請求項 8記 載のプログラム。
[10] コンピュータに、
生体を構成する部品である 2以上の生体部品および当該生体部品の階層構造を示 す情報を有する生体モデル構造情報を格納しており、
生体の変数に関する情報である変数情報を格納しているおり、
生体機能をシミュレートする演算式を生体機能毎に格納しており、
格納されて 、る生体モデル構造情報に基づ 、て、メモリ上に前記 2以上の生体部品 の階層構造を構成する階層構造構成ステップと、 前記階層構造を構成した 1以上の生体部品に対して、当該生体部品が実現する生 体機能に対応する 1以上の演算式を実行する実行ステップと、
前記実行ステップで実行した結果に基づいて、解析結果を出力する出力ステップを 実行させるためのプログラム。
[11] 前記出力ステップは、
前記実行ステップで演算式を実行した後の、前記生体部品の状態を取得する状態 取得サブステップと、
前記状態に基づいて、解析結果を出力するサブステップを具備する請求項 10記載 のプログラム。
[12] コンピュータに、
生体機能を識別する生体機能識別子と 1以上の演算式を有する生体演算式情報を 受け付ける受付ステップと、
前記受付ステップで受け付けた生体演算式情報を蓄積する蓄積ステップをさらに実 行させるための請求項 10または請求項 11記載のプログラム。
PCT/JP2005/017116 2004-09-27 2005-09-16 生体シミュレーション装置およびプログラム Ceased WO2006035618A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004279178A JP2007334377A (ja) 2004-09-27 2004-09-27 生体シミュレーション装置およびプログラム
JP2004-279178 2004-09-27

Publications (1)

Publication Number Publication Date
WO2006035618A1 true WO2006035618A1 (ja) 2006-04-06

Family

ID=36118770

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/017116 Ceased WO2006035618A1 (ja) 2004-09-27 2005-09-16 生体シミュレーション装置およびプログラム

Country Status (2)

Country Link
JP (1) JP2007334377A (ja)
WO (1) WO2006035618A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095623A (zh) * 2014-05-13 2015-11-25 中国人民解放军总医院 疾病生物标志物的筛选分析方法、平台、服务器及系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5274002B2 (ja) * 2007-12-18 2013-08-28 株式会社アクション・リサーチ 人工生命シミュレーション装置及び方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11509655A (ja) * 1995-04-14 1999-08-24 メディカル・サイエンス・システムズ,インコーポレイテッド 階層型生物モデリングシステム及び方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11509655A (ja) * 1995-04-14 1999-08-24 メディカル・サイエンス・システムズ,インコーポレイテッド 階層型生物モデリングシステム及び方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SARAI NOBUAKI.: "Seibutsugateki Shiten ni Motozuku Object Shiko Seitai Kino Simulation.", JOURNAL OF THE JAPAN SOCIETY OF SIMULATION TECHNOLOGY., vol. 23, no. 1, 15 March 2004 (2004-03-15), pages 4 - 13, XP002996893 *
SARAI NOBUAKI.: "simBio: Seibutsugakuteki Dynamic Model Kaihatsu Kiban.", BME., vol. 18, no. 2, 10 April 2004 (2004-04-10), pages 3 - 11, XP002996894 *
SHIBAYAMA TSUKASA.: "Object Shiko ni Motozuita Seitai Kino Simulation Model Kochiku Kankyo. (Biological Simulation Environment Based on Object Oriented paradigm)", IEICE TECHNICAL REPORT., vol. 103, no. 81, 16 May 2003 (2003-05-16), pages 23 - 28, XP002997689 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095623A (zh) * 2014-05-13 2015-11-25 中国人民解放军总医院 疾病生物标志物的筛选分析方法、平台、服务器及系统
CN105095623B (zh) * 2014-05-13 2017-11-17 中国人民解放军总医院 疾病生物标志物的筛选分析方法、平台、服务器及系统

Also Published As

Publication number Publication date
JP2007334377A (ja) 2007-12-27

Similar Documents

Publication Publication Date Title
Keating et al. SBML Level 3: an extensible format for the exchange and reuse of biological models
Bunne et al. How to build the virtual cell with artificial intelligence: Priorities and opportunities
Kazil et al. Utilizing python for agent-based modeling: The mesa framework
Françoise et al. Marcelle: composing interactive machine learning workflows and interfaces
Tarzi et al. Emerging methods for genome-scale metabolic modeling of microbial communities
Zhou et al. Using OmicsNet for network integration and 3D visualization
Than et al. PhyloNet: a software package for analyzing and reconstructing reticulate evolutionary relationships
US8589522B2 (en) Incrementally updatable system software infrastructure for sensor networks
Dematté et al. The Beta Workbench: a computational tool to study the dynamics of biological systems
JP2005129027A (ja) アプリケーションプログラミングインターフェース(api)の設計
EP4006662A1 (en) System and method supporting graphical programming based on neuron blocks, and storage medium
Tribello et al. PLUMED Tutorials: A collaborative, community-driven learning ecosystem
Bonaventura et al. Graphical modeling and simulation of discrete-event systems with CD++ Builder
De Vos et al. Virtual plant tissue: building blocks for next-generation plant growth simulation
Pop et al. Comparison of component frameworks for real-time embedded systems
Miller et al. Web-based computational chemistry education with CHARMMing I: Lessons and tutorial
Antonovici et al. Modeling plant tissue development using virtualleaf
WO2006035618A1 (ja) 生体シミュレーション装置およびプログラム
Bhardwaj et al. Virtual cells: from conceptual frameworks to biomedical applications
CN114217877A (zh) 基于页面交互组件的操作处理方法、装置、设备及介质
Kwiatkowska et al. Biological pathways as communicating computer systems
Nielson et al. Static analysis for systems biology
Liu et al. Protocol for biomodel engineering of unilevel to multilevel biological models using colored Petri nets
JP5039990B2 (ja) Uml図をナビゲートするための方法、システム、およびコンピュータ・プログラム
Duguid et al. Design and development of software tools for Bio-PEPA

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 05783300

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP