This application claims priority under 35 U.S.C. § 119 to Japanese Patent Application No. 2005-138563 filed May 11, 2005, the entire content of which is hereby incorporated by reference.
The present invention relates to a biological simulation system, particularly a system for simulating pathological condition of diabetes. Biological bodies have been conventionally tried to describe by mathematical models. The minimal model by Bergman can be referred to for this model. Bergman's minimal model was disclosed in “American Journal of Physiology, 1979, Vol. 236-6, p.E-667-77, Bergman et al.” and “Journal of Clinical Investigation, 1981, Vol. 68-6, p. 1456-67”. In this minimal model, variables are blood glucose level, plasma insulin concentration, and insulin action level i.e. remote insulin of insulin action point of a peripheral tissue. The equations of the minimal model are as follows:
where blood glucose level for time “t” is represented by “G(t)”, plasma insulin concentration is “I(t)”, and remote insulin is “X(t)”, and time difference is on the left sides. Parameters in the equation are:
These values depend on individuals.
If we try to simulate a biological body by applying such model to an individual patient and use the model for diagnosis and the like, we need to appropriately set the above-mentioned parameters constituting the biological model depending on the individual patients.
That means, when we try to reproduce an actual patient body by the biological model, we need accuracy of the above-mentioned parameters and obtain accurate parameters different among individual patients as much as possible.
Therefore, an object of the present invention is to provide a technical means for obtaining parameters of biological models corresponding to individual patients.
A first invention is a biological simulation system using a biological model comprising an internal parameter set generating section generating internal parameter sets constituting a biological model, a biological model computing section computing output of a biological model which emulates a biological response of a biological organ based on the internal parameter set, and a template database having a plurality of combinations of a reference output value of the biological model and an internal parameter set corresponding to the reference output value, wherein said internal parameter set generating section comprises a database reference means which selects a reference output value approximate to an actual biological response from said template database and which selects an internal parameter set corresponding to the selected reference output value.
A second invention is a biological simulation system using a biological model comprising an internal parameter set generating section generating internal parameter sets constituting a biological model, a biological model computing section emulating a biological response of the biological organ based on the internal parameter set, and a template database having a plurality of combinations of a reference output value of the biological model and a search range of an internal parameter set corresponding to the reference output value,
wherein said internal parameter set generating section comprises: a database reference means which selects a reference output value approximate to an actual biological response from said template database and which selects the search range of the internal parameter set corresponding to the selected reference output value; a means for automatically generating a plurality of different internal parameter sets within said search range; and a selecting means which determines an approximation between a biological model output calculated applying the automatically generated internal parameter set and an actual biological response and which selects an appropriate internal parameter set from a plurality of the generated internal parameter sets.
A third invention is a biological simulation system using a biological model comprising an internal parameter set generating section generating internal parameter sets constituting a biological model, a biological model computing section emulating a biological response of the biological organ based on the internal parameter set, and a template database having a plurality of combinations of a reference output value of the biological model and a selection range of an internal parameter set corresponding to the reference output value,
wherein said internal parameter set generating section comprises: a database reference means which selects a reference output approximate to an actual biological response from said template database and which selects the selection range of the internal parameter set corresponding to the selected reference output value; a means for automatically generating a plurality of different internal parameter sets within said selection range; a first selecting means which determines an approximation between a biological model output calculated applying the automatically generated internal parameter set and an actual biological response and which selects an appropriate internal parameter set from a plurality of the generated internal parameter sets, and a second selecting means for the selecting parameter within said selection range from the internal parameter sets selected by said first selecting means.
Further, with regard to an invention related to a computer program product, a computer is executed to perform the biological simulation as the biological simulation system.
Embodiments of the present invention is described hereinafter with reference to drawings.
The CPU 110a is capable of executing a computer program recorded in the ROM 110b and a computer program loaded in the RAM 110c. And the CPU 110a executes an application program 140a as described later to realize each function block as described later, thereby the computer 100a functions as the system 100.
The ROM 110b comprises mask ROM, PROM, EPROM, EEPROM, etc. and is recoded with computer programs executed by the CPU 110a and data used for the programs.
The RAM 110c comprises SRAM, DRAM, etc. The RAM 110c is used to read out computer programs recorded in the ROM 110b and the hard disk 110d. And the RAM 110c is used as a work area of the CPU 110a when these computer programs are executed.
The hard disk 110d is installed with an operating system, an application program, etc., various computer programs to be executed by the CPU 10a, and data used for executing the computer programs. An application program 140a described later is also installed in this hard disk 110d.
The readout device 110e which comprises a flexible disk drive, a CD-ROM drive or DVD-ROM drive is capable of reading out a computer program or data recorded in a portable recording media 140. And the portable recording media 140 stores the application program 140a to function as a system of the present invention. The computer 100a reads out the application program 140a related to the present invention from the portable recording media 140 and is capable of installing the application program 140a in the hard disk 110d.
In addition to that said application program 140a is provided by the portable recording media 140, said application program 140a may be provided through an electric communication line (wired or wireless) from outside devices which are communicably connected to the computer 100a via said electric communication line. For example, said application program 140a is stored in a hard disk in an internet server computer to which the computer 100a accesses and said application program 140a may be downloaded and installed in the hard disk 110d.
The hard disk 110d is installed with an operating system which provides a graphical user interface environment, e.g. Windows (Registered trademark) manufactured by US Microsoft corp. In the explanation hereinafter, the application program 140a related to this embodiment shall operate on said operating system.
The input/output interface 110f comprises a serial interface, e.g. USB, IEEE1394, RS-232C, etc.; a parallel interface, e.g. SCSI, IDE, IEEE1284, etc.; and an analog interface e.g. D/A converter, A/D converter, etc. The input/output interface 110f is connected to the input device 130 comprising a keyboard and a mouse and users can input data into the computer 100a using the input data device 130.
The image output interface 110h is connected to the display 120 comprising LCD, CRT or the like so that picture signals corresponding to image data provided from the CPU 110a are output to the display 120. The display 120 displays a picture (screen) based on input picture signals.
As in
That means, the pancreas model block 1 computes in emulation of a pancreas function. A blood glucose level 6 is set as input and an insulin secretion rate 7 is set as output to other blocks.
The hepatic metabolism model block 2 computes in emulation of a hepatic function. A glucose absorption 5 from digestive tract, a blood glucose level 6 and an insulin secretion rate 7 are set as input and net glucose release 8 and post liver insulin 9 are set as output to other blocks.
The insulin kinetics model block 3 computes in emulation of insulin kinetics. Post liver insulin 9 is set as input and peripheral tissue insulin concentration 10 is set as output to other blocks.
The peripheral tissue block 4 computes in emulation of peripheral tissue function. A net glucose release 8, and insulin concentration 10 in the peripheral tissue are set as input and a blood glucose level 6 is set as output to other blocks.
Said glucose absorption 5 is a data provided from outside and is performed by user inputting inspection data and the like using, for example, the input device 130. Further, the function blocks 1 to 4 are each realized by the CPU 110a executing the computer program 140a.
Except for the output to be given to other blocks, there exist values which are calculated in the block 3 but not given to other blocks as they are like the blood-insulin concentration I1 (
Next, the above-mentioned blocks each are described in detail. FGB expresses a fasting blood glucose level (FGB=BG (0)), and Ws expresses an assumed weight. DVg and DVi respectively express a distribution capacity volume against glucose and a distribution capacity volume against insulin.
Relationship between input and output of the pancreas model block 1 may be expressed using the following differential equation (1). A block diagram as in
Variables:
In
Relationship between input and output of the hepatic metabolism model block 2 may be described using the following differential equation (2). A block diagram as in
Variables:
In
Relationship between input and output of the insulin kinetics secretion may be described using the following differential equation (3). A block diagram as in
dI1(t)/dt=−A3I1(t)+A5I2(t)+A4I3(t)+SRpost(t)
dI2(t)/dt=A6I1(t)−A5I2(t)
dI3(t)/dt=A2I1(t)−A1I3(t) Differential equation (3):
Variables:
In
Relationship between input and output of the peripheral metabolism model block 4 may be described using the following differential equation (4). A block diagram as in
dBG′/dt=SGO(t)−u*Goff(FBG)−Kb·BG′(t)−Kp·I3(t)−BG′(t)
Variables:
In
Each block outputs time-series change of each output item based on the above-mentioned differential equation. Further, as in
Thus, the blood glucose level and the insulin concentration which have been sequentially calculated in such way can be displayed in the display 120. Thereby users can easily confirm results of the biological organ simulation as mentioned above. Further, it is possible to employ the present system as a subsystem for simulating biological functions in a medical system such as a diabetes diagnosis supporting system. In this case, the time-series change of calculated blood glucose level and insulin concentration is passed to other components of medical systems, by which, for example, diabetes diagnosis supporting information is provided. It is possible to obtain reliable medical information based on the blood glucose level and insulin concentration calculated by the present system.
With regard to calculation of the differential equations of the present system, e.g. E-cell (software disclosed by Keiou University) and MatLab (manufactured by the MathWorks Inc.) may be employed. Or other calculation system may be employed.
To simulate individual patient biological organs using the above-mentioned biological models as shown in FIGS. 2 to 6, it is required to determine an initial value of the above mentioned variables and parameters according to individual patient. (Unless otherwise specified, a variable initial value shall be included in parameters of subjects to be generated hereinafter).
For this purpose, the present system has a parameter set generation function (parameter set generating section) which obtains an internal parameter set of internal parameter group of the biological model (also simply referred to as “parameter set” hereinafter). The parameter set generated by said function is provided to said biological model so that a biological model computing unit simulates functions of the biological organs.
[Step S1-1: Inputting OGTT Time-Series Data]
OGTT time-series data are a result of OGTT (given amount of glucose solution is orally loaded to measure the time-series of blood glucose level and blood insulin concentration) from the actual examination of patients simulated by a biological model. The present system receives input as an actual biological response (actual examination values). Here, two data of and OGTT glucose data (blood glucose change data) and OGTT insulin (blood insulin concentration change data) are input as OGTT time-series data.
In
In
For inputting the OGTT time-series data to the present system, an input device 130 such as a keyboard and a mouse may be used. Or external memory device such as a database previously registered with OGTT time-series data.
[Step S1-2: Template Matching]
Next, this system (CPU 100a) matches the input OGTT time-series data to the template of template database DB1.
As shown in
where
Based on
Σ|BG(t)−BGt(t)|=29
Σ|PI(t)−PIt(t)|=20
where, provided α=0.00035, β=0.00105
Thus, CPU 100a obtains an error summation to each template in the template database DB1, and determines the template having the minimum error summation (similarity). Thus, CPU100a determines the template which is the most approximate to OGTT time-series data (Step S1-2).
[Step S1-3: Judging Threshold Value]
Consequently, in a step S1-3, CPU100a judges whether the template error summation (similarity) which has been determined in the step S1-2 is lower than a threshold value so as to judge whether the determined template is sufficiently similar to the input OGTT time-series data. For example, in the case that a threshold value (criterion) is set to 0.1 and that the above-mentioned template T1 (error summation=0.03115) is extracted in the Step S1-2, The template T1 is judged to be similar to the OGTT time-series data.
[Step S1-4: Obtaining Parameters]
Further, in a step S1-4, the CPU100a obtains from template database DB1 a parameter set corresponding to the template which has been determined in the step S1-2 and has been judged to be similar in the step S1-3. That means, a parameter set PS#01 corresponding to the template T1 is obtained (Ref. to
Table 1 below exemplifies the specific numeral values of the parameter values included in the parameter set PS#01 obtained by the above-mentioned way.
The above-mentioned parameter set PS#01 is given to the biological model to generate the output approximate to the input OGTT time-series data, so that patients' biological organs can be appropriately simulated.
[Step S1-5: Outputting Biological Function Profiles]
And then, this system (CPU100a) produces a biological function profile shown in
[Step S1-6: Estimating Set Biological Model Parameter]
In the step S1-3, when the error summation (similarity) of the template is judged to be higher than the threshold value (not similar), a parameter set is generated by the following parameter estimation process without using the template database DB1.
The procedure of generating the parameter set candidates by GA comprises, as shown in
The algorithm in
[Step S1-6-1: Generating Initial Group]
This system has search-range information for each biological model parameter as shown in the following table 2. The search-range of the table 2 is the range which human being can take per parameter and the search-range of the table 2 is referred to as basic search range.
The system has functions to generate random numbers per parameter within a range of maximum value and minimum value of the table 2. thereby automatically and randomly generating parameter set PS. The parameter set PS obtained in this way may be referred to as “individual”.
An initial group consisting of multiple parameter sets PS (e.g. 10) is generated by repeating the step of generating random numbers every parameters within the search range of Table 2.
[Step S1-6-2: Evaluating Fitness]
This system performs fitness evaluation on generated individuals to select and extract some individual PS from individuals PS of the (initial) group. In the fitness evaluation, observed OGTT time-series data (Ref. to FIGS. 8(a), 8(b)) which have been input in the step S1-1 of
[Step S1-6-4-1: Selecting]
Next, in this system, some individuals (for example, 4 individuals) are selected from a (initial) group based on the predetermined reference e.g. fitness rate, and designated as “parents”. As for a selection reference, not only “parents” with high fitness rate but also some “parents” with low fitness rate may be included in expectation that the fitness rate will increase in “children” the later generation.
[Step S1-6-4-2: Crossing]
Against the group of individuals selected as “parents” in the above selecting step, this system generates new two individuals as “children” by the following procedure.
First, (1) two individuals are selected at random from the selected group of individuals. Next, (2) Frequency of crossing with individuals each other is obtained (the number of parameters as subject to be exchanged). The crossing frequency is obtained by the following formula if a crossing probability is expressed by XR (a range of 0 to 1 range):
Crossing frequency=[XR×(the number of parameters held by one individual)]
[ ] is a gauss mark (e.g. [3,14]=3).
And then, (3) a crossing point is obtained. The crossing point is obtained by randomly generating integral values from 1 to parameter number (22 in the case of Table 2) at “crossing frequency”. Finally, (4) new individuals are generated. Particularly, between 2 individuals selected in the step (1), parameters of the crossing points obtained in the step (3) are exchanged to generate new two individuals.
Repetition of the above steps (1) to (4) generates new individuals “children” (6 individuals in the above example) by an increment of individuals decreased by selection and a new group is generated
[Step S1-6-4-3: Mutating]
Against all individuals of the new group, this system changes parameters of each individual with mutation probability MR (in the range of 0 to 1) by the following procedures.
For example, in a mutation process conducted on a given parameter of a given individual, random number R is generated in the range of 0 to 1. With R≦MR, the random number is generated within the search range shown in Table 2 and substituted for an original value. The same process is conducted on all parameters of all individuals.
[Step S1-6-3, S1-6-5: Determining end Condition]
Steps S1-6-2 to S1-6-4 are repeated as shown in
When frequency of repetition steps S1-6-2 to S1-6-4 (fitness rate evaluation to mutation) exceeds predetermined frequency, the GA procedure is terminated and the individual (parameter set) having the highest fitness rate in the group is the estimation result (step S1-6-5). As a determination condition of end, the repetition frequency may be e.g. 300 times.
When the parameters obtained by the biological model parameter set estimation process as mentioned above is provided to the biological model, output approximate to input OGTT time-series data can be generated, so that it is possible to appropriately simulate patients' biological organs. Further, this system draft biological function profiles based on the parameter value included in the parameter sets which are obtained by the estimation process and output them to the display 120 (Step S1-5).
According to the first embodiment, if one approximate to the OGTT time-series data exists in the template of the template database DB1, the parameter sets can be easily obtained with reference to said database DB1, so that processing speed is increased comparing with the case of generating parameter sets by a biological model parameter set estimation process alone.
When the template database DB1 has sufficient templates, a function for the biological model parameter set estimation process (S1-6) may be omitted.
In the second embodiment, as the result of template matching, in Step S2-4, the parameter set which has been obtained from the template database DB1 is not used as it is but CPU100a determines a local parameter search range based on said parameter set (Step S2-5).
The local search range determined in Step S2-5 includes each parameter value of the parameter set obtained in Step S2-4 and is narrower than the basic search range shown in the above Table 2. More specifically, the local search range has a predetermined search width of mm1 to mm22 with a parameter value of the parameter set obtained in Step S2-4 as a center value. That means, as shown in Table 3, each parameter value is set with search width of mm1 to mm22. For example, with regard to a parameter value “h” of the parameter set obtained in Step S2-4, “h−mm1” becomes the minimum value of the local search range of “h”, “h+mm1” becomes the maximum value of the local search range.
While in Step S2-3, when the CPU 100a judges that the template error summation (similarity) is larger than the threshold value (dissimilarity), the default value parameter search range (basic parameter search range) shown in Table 2 is employed as a search range.
And in Step S2-7, the biological model parameter set estimation process is performed in the local research range determined in Step S2-5 or in the basic research range in Step S2-6. That means, parameters are generated by genetic algorithm for individual generation/crossing/mutating with the local search range or the basic search range. The procedure of genetic algorithm is the same with the procedure in Step S1-6 in
The biological function profiles are generated based on the parameter sets generated in Step S2-7 and are output to the display 120 (Step S2-8).
Thus, the parameter set generating section of the second embodiment dose not use the parameter set obtained from the template database DB1 as it is, but determines a search range based on parameter sets obtained and search parameter sets generating output more approximate to the input OGTT time-series data with the search range, so that more appropriate parameter sets can be obtained.
In addition, in the second embodiment, the local search range narrower than the basic search range, is set based on the parameter set obtained from the template database DB1, so that process speed can be increased comparing with that parameter sets are generated by the biological model parameter set estimation process with the basic search range.
In the second embodiment, when template database DB1 has sufficient templates, the function of biological model parameter set estimation process with the basic search range may be omitted.
Further, Step S3-5 in
This function of StepS3-5 comprises a selection range determining means in this system.
Step S3-6 of the third embodiment is not related with said “selection range”, but the biological model parameter set estimation process is performed with the default parameter search range (basic search range). That means, parameter sets are automatically generated with the basic search by generating individual/crossing/mutating genetic algorithm. The procedure of the genetic algorithm is the same with that of Step S1-6 in
The parameter sets automatically generated during operation of the genetic algorithm are narrowed down in the fitness evaluation of the first selection and the parameter set approximate input ODTT time-series data is selected. The function of Step S3 to 6 comprises the first selecting means of this system. Further, here, the genetic algorithm is executed several time to generate a plurality of parameter sets. When plurality of the generated parameter sets are provided to the biological model, each parameter set can generate output approximate to the input OGTT time-series data and there may be a plurality of parameter sets generating similar output. For example, parameter sets whose combination of parameter set values is impossible for human beings may be included in plurality of the parameter sets.
Then, in the third embodiment, a second selecting process is performed to narrow down plurality of the parameter sets obtained in the biological model parameter set estimation process in Step S3-6 with said “selection range” (Step S3-7). Because “selection” is a possible range where appropriate parameter values can exist, appropriate parameter sets cab be selected by selecting the parameter sets within “selection range” among a plurality parameter sets. Function of Step S-7 comprises a second selecting means of the this system.
Further, in the third embodiment, in Step S3-3, when the template error summation (similarity) is determined larger than the threshold value (non-similar), a single parameter set is generated by the biological model parameter set estimation process with default parameter search range (basic parameter search range) as a search range.
And the biological function profiles are generated based on the parameter set generated in Step S3-7 or the parameter set generated in Step S3-8 and are output to the display 120 (Step S3-9).
In the third embodiment, when template database DB 1 has sufficient templates, the function of Step S3-8 may be omitted.
Further, Step S4-4 in
In the fourth embodiment, when the template T1 is selected as a template most approximate to the OGTT time-series data, the template database DB2 is referred to obtain five parameter sets candidates PS#01-A to PS#05-A which correspond to the template T1 in Step S4-4.
When these candidates PS#01-A to PS#05-A are provided to the biological model, each of the candidates can generate output relatively approximate to OGTT time-series data (template T1). However their output are slightly different from each other.
And, in Step S4-5, the CPU100a similarity computation (error summation computation) same as template matching is performed on OGTT time-series data and output of the biological model provided with each of the parameter set candidates PS#01-A to PS#05-A. The parameter candidate of the minimum error summation is available to generate output most approximate to the OGTT time series data.
In the template database DB2, the number of parameter set candidates corresponding to one template is not limited to five. Any number may be possible.
Further in the fourth embodiment, in Step S4-3, when the template error summation (similarity) is determined larger than the threshold value (non-similar), a parameter set is generated by the biological model parameter set estimation process with default parameter search range (basic parameter search range) as a search range.
And biological function profiles are generated based on the parameter set obtained in Step S4-5 or Step S4-6, and they are output to the display 120 (Step S4-7).
In the forth embodiment, when template database DB1 has sufficient templates, the function of Step S3-7 may be omitted.
Although Step S1-4 in
In the template database DB3, the search range corresponding to the template is narrower than the default parameter search range (basic search range) and the random parameter set in said search range is provided to the biological model to generate output approximate to the template. That means, the search range of Table 4 is same with the previously-mentioned local search range.
In this fifth embodiment, as in the second embodiment, the search range narrower than the basic search range can be determined based on the template and the local search range is stored in the template database DB3, so that the local search range is immediately obtained and a processing speed is increased.
In Step S5-3, when the template error summation (similarity) is determined larger than the threshold value (non-similar), the default parameter search value range (basic parameter search range) is employed as a search range (Step S5-5). biological model parameter set estimation process is performed with the local search range determined in Step S5-4, or the basic search range determined in Step S5-5. That means, parameter sets are generated with the local search range or the basic search range by genetic algorithm performing generating individuals/crossing/mutating. Te procedure of the genetic algorithm is same with the procedure in Step S1-6 in
As mentioned above, the function of Step S5-6 comprises a selecting means for selecting parameters in this system.
The biological function profiles are generated based on the parameter set generated in Step S5-6 and they are output to the display 120 (Step S5-7).
Step S6-4 in
Further, in Step S6-5, as in Step S3-6 of the third embodiment, the biological model parameter set estimation process is performed with the default parameter search range (basic search range) without regard to said “selection range”. That means, parameter sets are automatically generated with the basic search range by the genetic algorithm for generating individual/crossing/mutating. The procedure of the genetic algorithm is same with Step S1-6 in
The parameter sets automatically generated during the genetic algorithm execution are narrowed down by the first selection with fitness evaluation in the genetic algorithm and the parameter set approximate to the input OGTT time-series data is selected.
Here, the genetic algorithm is executed several times to generate a plurality of parameter sets.
Thus, the function of Step S6-5 comprises the first selecting means of this system.
Then, in the sixth embodiment, as in Step S3-7 of the third embodiment, a second selecting process is performed to narrow down plurality of the parameter sets obtained in the biological model parameter set estimation process with said “selection range” (Step S6-6). Because “selection range” is a available range where appropriate parameter values exist, appropriate parameter sets cab be selected by selecting the parameter sets within “selection range” among a plurality parameter sets. Function of Step S-6-6 comprises a second selecting means of the this system.
Further, in the sixth embodiment, in Step S6-3, when the template error summation (similarity) is determined larger than the threshold value (dissimilarity), a single parameter set is generated by the biological model parameter set estimation process with default parameter search range (basic parameter search range) as a search range (Step S6-7).
And the biological function profiles are generated based on the parameter set generated in Step S6-6 or the parameter set generated in Step S6-7 and are output to the display 120 (Step S6-8).
In the sixth embodiment, when template database DB1 has sufficient templates, the function of Step S6-7 may be omitted.
The present invention is not to be restricted to the above mentioned embodiments, and various modifications may be possible without departing from the spirit and scope of the invention.
For example, a subject to be simulated is not limited to diabetes pathological conditions, but may be other pathological conditions. And constructions of biological model and its parameters are not limited to the above mentioned ones and may be changed accordingly.
Further, a searching means (selecting means) is not limited to one comprising the genetic algorithm. Other algorithm is satisfied as long as parameter sets are randomly and automatically generated and appropriate parameter sets are selected with appropriate reference.
Number | Date | Country | Kind |
---|---|---|---|
2005-138563 | May 2005 | JP | national |