Abstract:
A method for integrating models of biological systems (i.e., molecules, cells, organs, organisms) that can be simulated with models of laboratory procedures that can be executed, to support close-loop iteration between in silico and physical modeling and experimentation in support of scientific research, discovery, and product development.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     This disclosure generally relates to research, development, and manufacturing, and particularly to tools for automating the performance and documenting of research, development, and manufacturing activities.  
         [0003]     2. Description of the Related Art  
         [0004]     It is vital for scientists to be able to integrate in silico (computer-generated) predictions with physical experimentation to build more accurate understanding of various systems, for example, biological systems. The lack of formal languages for building system models and for describing experiments makes it difficult, if not impossible, for these processes to be widely distributed or easily automated in a large scale collaborative effort. In addition to lacking formal languages, scientists lack tools that allow them to integrate in silico models of physical systems that encode the scientists predictions with digital experiment protocols and results generated in the physical laboratory.  
       BRIEF SUMMARY OF THE INVENTION  
       [0005]     It would be desirable to have design and execution software tools based on a visual modeling language that allows scientists to design, annotate, and share information about experimental plans and results as well as model and simulate physical systems, for example, biological systems. 
     
    
     DEFINITIONS AND BRIEF DESCRIPTION OF THE DRAWINGS  
       [0006]     In the drawings, identical reference numbers identify similar elements or acts. The sizes and relative positions of elements in the drawings are not necessarily drawn to scale. For example, the shapes of various elements and angles are not drawn to scale, and some of these elements are arbitrarily enlarged and positioned to improve drawing legibility. Further, the particular shapes of the elements as drawn, are not intended to convey any information regarding the actual shape of the particular elements, and have been solely selected for ease of recognition in the drawings.  
         [0007]      FIG. 1  is a functional block diagram of a computing system suitable for embodying at least one embodiment of the invention.  
         [0008]      FIG. 2  is a schematic diagram of a closed-loop integration of a software program for design, execution and/or documentation of physical experimental procedures and an in silico software program for design, execution and/or analysis of in silico models of physical systems, according to one illustrated embodiment.  
         [0009]      FIG. 3  is a screenshot of a user interface of an adaptive workflow tool according to at least one embodiment, illustrating a graphical view of a digital model of an in silico physical system, such as a biological system.  
         [0010]      FIG. 4  is a screenshot of a user interface of an adaptive workflow tool according to at least one embodiment, illustrating a graphical view of a family of in silico physical systems.  
         [0011]      FIG. 5  is a screenshot of a user interface of an adaptive workflow tool according to at least one illustrated embodiment, illustrating a graphical view of a physical laboratory procedure.  
         [0012]      FIG. 6  is a screenshot of a user interface of an adaptive workflow tool according to at least one illustrated embodiment, illustrating a graphical view of a portion of a physical laboratory procedure including plots illustrating mathematical relationships between parameters in the digital models of the experimental procedure and the in silico physical systems.  
         [0013]      FIG. 7  is a screenshot of a user interface of an adaptive workflow tool according to at least one illustrated embodiment, illustrating an exemplary laboratory procedure.  
         [0014]      FIG. 8  is a screenshot of a user interface of an adaptive workflow tool according to at least one illustrated embodiment, illustrating a graphical view of digital models of a family of in silico physical systems and an experimental or laboratory procedure in a in a single software environment.  
         [0015]      FIG. 9  is a screenshot of a user interface of an adaptive workflow tool according to at least one illustrated embodiment, illustrating a family of in silico physical systems and plots of results for each of the in silico physical systems.  
         [0016]      FIG. 10  is a screenshot of a portion of a user interface of an adaptive workflow model in the form of a graphical model or Sample Flow Graph (SFG) illustrating the automatic execution of a simplex algorithm to optimize parameters over four sets of experimental data, according to at least one illustrated embodiment.  
         [0017]      FIG. 11  is a screenshot similar to that of  FIG. 10 , illustrating that the system correctly evaluates the defined expression.  
         [0018]      FIG. 12  is a screenshot similar to that of  FIG. 11 , illustrating that the system preprocesses a parameter or function correctly. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0019]     In the following description, certain specific details are set forth in order to provide a thorough understanding of various embodiments of the invention. However, one skilled in the art will understand that the invention may be practiced without these details. In other instances, well-known structures associated with batch-based procedure design have not been shown or described in detail to avoid unnecessarily obscuring descriptions of the embodiments of the invention.  
         [0020]     Unless the context requires otherwise, throughout the specification and claims which follow, the word “comprise” and variations thereof, such as, “comprises” and “comprising” are to be construed in an open, inclusive sense, that is as “including, but not limited to.” 
         [0021]     Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearance of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Further more, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.  
         [0022]     The headings provided herein are for convenience only and do not interpret the scope or meaning of the claimed invention.  
         [0023]      FIG. 1  and the following discussion provide a brief, general description of a suitable computing environment in which embodiments of the invention may be implemented. Although not required, embodiments in the invention will be described in the general context of computer-executable instructions, such as program application modules, objects, or macros being executed by a personal computer. Those skilled in the relevant art will appreciate that the invention can be practiced with other computing system configurations, including handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. The invention can be practiced in distributed computing environments where tasks or modules are performed by remote processing devices, which are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.  
         [0024]     Referring to  FIG. 1 , a conventional personal computer referred to herein as a computing system  10  includes a processor unit  12 , a system memory  14  and a system bus  16  that couples various system components including the system memory  14  to the processing unit  12 . The processing unit  12  may be any logical processing unit, such as one or more central processing units (CPUs), digital signal processors (DSPs), application-specific integrated circuits (ASIC), etc. Unless described otherwise, the construction and operation of the various blocks shown in  FIG. 1  are of conventional design. As a result, such blocks need not be described in further detail herein, as they will be understood by those skilled in the relevant art.  
         [0025]     The system bus  16  can employ any known bus structures or architectures, including a memory bus with memory controller, a peripheral bus, and/or a local bus. The system memory  14  includes read-only memory (“ROM”)  18  and random access memory (“RAM”)  20 . A basic input/output system (“BIOS”)  22 , which can form part of the ROM  18 , contains basic routines that help transfer information between elements within the computing system  10 , such as during startup.  
         [0026]     The computing system  10  also includes one or more spinning media memories such as a hard disk drive  24  for reading from and writing to a hard disk  25 , and an optical disk drive  26  and a magnetic disk drive  28  for reading from and writing to removable optical disks  30  and magnetic disks  32 , respectively. The optical disk  30  can be a CD-ROM, while the magnetic disk  32  can be a magnetic floppy disk or diskette. The hard disk drive  24 , optical disk drive  26  and magnetic disk drive  28  communicate with the processing unit  12  via the bus  16 . The hard disk drive  24 , optical disk drive  26  and magnetic disk drive  28  may include interfaces or controllers coupled between such drives and the bus  16 , as is known by those skilled in the relevant art, for example via an IDE (i.e., Integrated Drive Electronics) interface. The drives  24 ,  26  and  28 , and their associated computer-readable media, provide nonvolatile storage of computer-readable instructions, data structures, program modules and other data for the computing system  10 . Although the depicted computing system  10  employs hard disk  25 , optical disk  30  and magnetic disk  32 , those skilled in the relevant art will appreciate that other types of spinning media memory computer-readable media may be employed, such as, digital video disks (“DVD”), Bernoulli cartridges, etc. Those skilled in the relevant art will also appreciate that other types of computer-readable media that can store data accessible by a computer may be employed, for example, non-spinning media memories such as magnetic cassettes, flash memory cards, RAMs, ROMs, smart cards, etc.  
         [0027]     Program modules can be stored in the system memory  14 , such as an operating system  34 , one or more application programs  36 , other programs or modules  38 , and program data  40 . The system memory  14  also includes a browser  41  for permitting the computing system  10  to access and exchange data with sources such as websites of the Internet, corporate intranets, or other networks, as well as other server applications on server computers. The browser  41  is markup language based, such as hypertext markup language (“HTML”), and operate with markup languages that use syntactically delimited characters added to the data of a document to represent the structure of the document.  
         [0028]     While shown in  FIG. 1  as being stored in the system memory  14 , the operating system  34 , application programs  36 , other program modules  38 , program data  40  and browser  41  can be stored on the hard disk  25  of the hard disk drive  24 , the optical disk  30  and the optical disk drive  26  and/or the magnetic disk  32  of the magnetic disk drive  28 . A user can enter commands and information to the computing system  10  through input devices such as a keyboard  42  and a pointing device such as a mouse  44 . Other input devices can include a microphone, joystick, game pad, scanner, etc. These and other input devices are connected to the processing unit  12  through an interface  46  such as a serial port interface that couples to the bus  16 , although other interfaces such as a parallel port, a game port or a universal serial bus (“USB”) can be used. A monitor  48  or other display devices may be coupled to the bus  16  via video interface  50 , such as a video adapter. The computing system  10  can include other output devices such as speakers, printers, etc.  
         [0029]     The computing system  10  can operate in a networked environment using logical connections to one or more remote computers or robotic system, for example, a microfluidic system  60 . The computing system  10  may employ any known means of communications, such as through a local area network (“LAN”)  52  or a wide area network (“WAN”) or the Internet  54 . Such networking environments are well known in enterprise-wide computer networks, intranets, and the Internet.  
         [0030]     When used in a LAN networking environment, the computing system  10  is connected to the LAN  52  through an adapter or network interface  56  (communicatively linked to the bus  16 ). When used in a WAN networking environment, the computing system  10  often includes a modem  57  or other device for establishing communications over the WAN/Internet  54 . The modem  57  is shown in  FIG. 1  as communicatively linked between the interface  46  and the WAN/Internet  54 . In a networked environment, program modules, application programs, or data, or portions thereof, can be stored in a server computer (not shown). Those skilled in the relevant art will readily recognize that the network connections shown in  FIG. 1  are only some examples of establishing communication links between computers and/or robotic systems  60 , and other links may be used, including wireless links.  
         [0031]     The computing system  10  may include one or more interfaces such as slot  58  to allow the addition of devices either internally or externally to the computing system  10 . For example, suitable interfaces may include ISA (i.e., Industry Standard Architecture), IDE, PCI (i.e., Personal Computer Interface) and/or AGP (i.e., Advance Graphics Processor) slot connectors for option cards, serial and/or parallel ports, USB ports (i.e., Universal Serial Bus), audio input/output (i.e., I/O) and MIDI/joystick connectors, and/or slots for memory.  
         [0032]     The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor unit  12  for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, hard, optical or magnetic disks  25 ,  30 ,  32 , respectively. Volatile media includes dynamic memory, such as system memory  14 . Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise system bus  16 . Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.  
         [0033]     Common forms of computer-readable media include; for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.  
         [0034]     Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to processor unit  12  for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem  57  local to computer system  10  can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector coupled to the system bus  16  can receive the data carried in the infrared signal and place the data on system bus  16 . The system bus  16  carries the data to system memory  14 , from which processor unit  12  retrieves and executes the instructions. The instructions received by system memory  14  may optionally be stored on storage device either before or after execution by processor unit  12 .  
         [0035]     One set of software instructions in the form of a routine, program or package (i.e., TeraLab) is used to design, execute, and document experimental procedure for physical experiments, while another set of software instructions in the form of a routine, program or package (i.e., TeraSim) is used to design, execute, analyze and generate predictions in silico using digital models of physical systems, for example, biological systems. Disclosed herein are methods to create a closed-loop integration of executable digital models developed using software such as TeraLab and TeraSim. Closed-loop integration of the physical systems and experimental procedure digital models allows: 
        (A) parameters and results from physical experiments to alter or optimize, either mathematically and/or visually, models of biological systems; and/or     (B) predictions generated from biological models to directly alter, either mathematically and/or visually, parameters describing physical experiments.        
 
         [0038]      FIG. 2  shows a closed-loop integration  100  of a digital model  102  of an experimental procedure and a digital model  104  of a physical system. A first set of software instructions, designated herein as TeraLab software  106 , is used to design  108 , execute  110 , and document experimental procedure. A second set of software instructions, designated herein as TeraSim software  112 , is used to design  114 , execute and analyze in silico (i.e., simulate  116 ) models of physical systems, for example, biological systems. Physical results generated using the TeraLab software  106  and the digital model  102  of the experimental procedure can be used to 1) design further experiments illustrated by arrow  118  and/or 2) validate or optimize model parameters in the digital model  104  of the physical system illustrated by arrow  120 . Predictions generated using the TeraSIm software  112  and the digital models  104  of the physical system can be used to 1) update the digital model  104  of the physical system as illustrated by arrow  122  and/or 2) select or optimize parameters of the digital model  102  of the experimental procedure as illustrated by arrow  124 .  
         [0039]     Integration of executable digital models  102 ,  104  generated in TeraLab software  106  and TeraSim software  112  results in more rapid iteration of the research cycle and improved communication about systems, for example biological systems, and experiment designs. Some examples of the use of digital models  102 ,  104  generated via TeraLab software  106  and TeraSim software  112  in an integrated fashion for biological research are described below.  
         [0040]     Some of elements useful in supporting closed-loop integration of in silico and physical processes may include: 
        1. General Data Model. An extensible application independent data model, text representation, and database schema for storing and manipulating hierarchical graph structures (e.g., nodes and edges).     2. Specific Data Models. Data models  102 ,  104  for representing both systems (e.g., biological systems) and experiment procedures that can be expressed in the general graph structure and database schema described above.     3. Single Graphical Interface. A user interface that allows both model types (i.e., procedural and biological) to be viewed in the same graphical environment, from which integrated spreadsheets and data visualizations can be derived.     4. Parameter Mapping. A mechanism for mapping points in the model&#39;s parameter space to, and from, points in the procedure&#39;s parameter space within the same modeling environment.     5. Model Management. A mechanism for managing system (e.g., biological) and procedure models, in a distributed system for collaboration, regressing testing and assessment, and automated model validation. 
 
 General Applicability 
       
 
         [0047]     TeraLab software  106  is a visual-based software tool that is general and flexible enough to design, execute, and document almost any physical or in silico process or procedure in the life and/or physical sciences. The icon set provided by the TeraLab software  106  provides the ability to design biological, biochemical, and chemical experiments and manufacturing processes. Additionally, the same icon set provides the ability to design human clinical trial and patient care protocols. The ability to design these protocols demonstrates the broad applicability of the TeraLab software  16  which can be applied to a broad range of areas when digital models  102  produced using TeraLab software  106  are integrated with digital models  104  produced using TeraSim software  112 .  
         [0048]     TeraSim software  112  is a visual-based software tool that is flexible enough to model virtually any biological system or process. The TeraSim software  112  is capable of modeling biological and biochemical systems, either non-mathematical or mathematical-based, including signaling pathways, metabolic pathways, electrophysiological systems, cardiac models. The ability to model these biological systems demonstrates the broad applicability of the TeraSim software  112  which can be applied to model virtually any biological, biochemical, or chemical process when digital models  102  produced using TeraSim software  106  are integrated with digital models  104  produced using TeraLab software  112 .  
       EXAMPLE  
       [0049]     While the integration of TeraLab and TeraSim models has applicability to all aspects of physical sciences including life science research, the example presented here focuses on measuring protein-protein binding between the T cell receptor (TCR) and its ligand, the major histocompatibility molecule (MHC), which is a crucial interaction in the mammalian immune system. The following sequence of steps illustrates one embodiment of the closed loop process that is enabled by the methods and/or mechanisms presented in this disclosure. The steps correspond to: 
        1. Model design     2. Model-driven procedure design and refinement  124      3. Procedure execution and data capture     4. Data-driven model validation, optimization, and refinement  120  
 
 Model Design 
       
 
         [0055]      FIG. 3  shows a user interface  130  including a visual representation of a digital model  104   a  of an in silico physical system. A user can define the digital model  104   a  by selecting appropriate icons from a variety of menus. For example, selection of an icon from a first set of icons  132 , creates a hierarchical node in the digital model  104   a.  A node icon graphically represents the hierarchical node in a graph structure or flow graph, and a data structure represents the hierarchical node in the schema of the digital model  104   a.  For example, some of the objects in the digital model  104   a  of the physical system corresponding to the three chemical species and to the reaction between them may be graphically represented by node icons  134   a - 134   d.  Selection of an icon from a second set of icons  136  creates an hierarchical edge in the digital model  104   a.  A hierarchical edge icon graphically represents the hierarchical edge in a flow graph, and a data structure represents the hierarchical edge in the schema of the digital model  104   a.  For example, hierarchical edge icons  138   a - 138   c  represent relationships between the hierarchical nodes represented by hierarchical node icons  134   a - 134   d.    
         [0056]     In particular,  FIG. 3  shows a simple digital model  104   a  of the physical interaction between isolated MCH and TCR. The digital model  104   a  contains three chemical species: the MHC molecules, the unbound TCR (TCR_u) molecules, and the TCR-MHC compound (TCR_b), graphically represented by hierarchical node icons  134   a,    134   b,    134   c,  respectively. These three species are related by a single chemical reaction represented by the dark gray node icon  134   d  (i.e., a reaction node) in the flow graph. This reaction node specifies that the forward and reverse reactions rates are a function of the species concentrations, and of two rate constant parameters in the model: Kf and Kr.  
         [0057]     A property panel  140   a  shows the mathematical description of the reaction, and the rate constants, Kf and Kr as well as a plot  142   a  of an independent variable (e.g., exposure time) versus a dependant variable (e.g., concentration of bound TCR). The digital model  104   a  can be changed in a qualitative way by changing the structure of the digital model  104   a  and the mathematical relationships, or it can be changed in a quantitative way by altering parameters such as Kf and Kr.  
         [0058]      FIG. 4  shows a family of in silico models  104   a ( 1 )- 104   a ( 4 ) of physical systems with different values of the independent variable and predicted results. Because of the speed and low cost of the simulation environment, it is possible to try many variations than can be physically performed. In the digital models  104   a ( 1 )- 104   a ( 4 ) shown in  FIG. 4 , the independent variable is the duration of time that the MHC is exposed to unbound TCR. In simulation and analysis environment, the independent variable (exposure time) can be plotted along with the concentration of bound TCR that is predicted by the models  104   a ( 1 )- 104   a ( 4 ). For example, the upper plot  142   a  shows the TCR_b concentration over time for each of the four in silico digital models  104   a ( 1 )- 104   a ( 4 ). The lower plot  142   b  shows that each digital model  104   a ( 1 )- 104   a ( 4 ) has a different intiial concentration of the TCR_u reagent, resulting in a different response.  
         [heading-0059]     Data-Driven Procedure Design and Refinement  
         [0060]     To validate the digital model  104   a  of the physical system, a few of these in silico representations  104   a ( 1 )- 104   a ( 4 ) could be selected for laboratory implementation. Because of the common underlying general graph representation in the executable code, database schema, and file format, digital models  102  of the experimental procedure can be managed and manipulated in the same software environment as digital models  104  of the physical systems.  
         [0061]      FIG. 5  shows a user interface  230  including a visual representation of a digital model  102   a  of physical laboratory procedure for a TCR-MCH binding assay. A user can define the digital model  102   a  by selecting appropriate icons from a variety of menus. For example, selection of an icon from a first set of icons  232 , creates a hierarchical node in the digital model  102   a.  A node icon graphically represents the hierarchical node in a graph structure or flow graph, and a data structure represents the hierarchical node in the schema of the digital model  102   a.  For example, some of the objects or operations in the digital model  102   a  of the experimental procedure may be graphically represented by node icons  234   a - 234   n,  collectively  234 . Selection of an icon from a second set of icons  236  creates an hierarchical edge in the digital model  104   a.  A hierarchical edge icon graphically represents the hierarchical edge in a flow graph, and a data structure represents the hierarchical edge in the schema of the digital-model  104   a.  For example, hierarchical edge icons  238   a - 238   f  (only some of which are called out in the Figures for sake of clarity), collectively  238  represent relationships between the hierarchical nodes represented by hierarchical node icons  234   a - 234   n.    
         [0062]     In particular,  FIG. 5  shows a general physical experimental procedure for measuring TCR-MHC binding (i.e., TCR-MCH binding assay). As illustrated and discussed below, the graphical view of the digital model  102   a  of the experimental procedure may be shown in the same graphical view as the graphical view of the digital model  104   a  of the in silico physical system. The procedure model  102   a  indicates that the experiment can be performed on a batch of samples of any size. Exposure time is the independent variable. Each sample of MHC will be prepared in some way and then exposed to TCR for a period of time. Concentrations of MCH and TCR are independent variables, which are specified in the Dilute MCH and Dilute TCR steps, respectively. Once these variables are determined, all of the other unspecified values are accepted by the system using formulas embedded in the flow graph. One such formula for computing the amount of water needed to dilute TCR is shown above. The dependent variable is the fluorescence readout in the measurement operation.  
         [0063]      FIG. 6  shows the user interface  230  showing a portion of the graphical representation of the experimental procedure, along with plots  242   a - 242   d  illustrating the mathematical relationships between parameters in the digital models  104   a,    102   a  of the in silico physical system and experimental procedure, respectively.  
         [0064]      FIG. 7  shows user interface  230  showing a portion of the graphical representation of the digital model  102   a  of the experimental procedure after manual entry of four values for DiluteTCR.Concentration, all other values in the digital model  102   a  of the experimental procedure being automatically computed.  
         [0065]     Of particular note,  FIG. 7  illustrates primitive nodes and primitive edges Which are defined in the digital models  102 ,  104  by the hierarchical nodes and edges. In particular, a number of primitive nodes and primitive edges are associated with the hierarchical nodes and hierarchical edges by the dimensionality thereof. The primitive nodes may be represented graphically by primitive node icons  250   a - 250   h  (only some called out in the Figures for sake of clarity), collectively referenced as  250 , and primitive edge icons  252   a - 252   c  (only some called out in the Figures for sake of clarity), collectively referenced as  252 . The digital model  104  of physical system may have similar primitive nodes and edges associated with the hierarchical nodes and edges.  
         [0066]     The common execution environment enables parameters in the two digital models  102 ,  104  to be mathematically related either directly or otherwise so that these values do not have to be manually entered. Rather, the values can be determined from in silico physical experimental models selected by the user. For example, the four concentrations of TCR and one of MHC can be expressed in terms of model parameters for each of the digital models  104   a ( 1 )- 104   a ( 4 ) of the four in silico system physical models of  FIG. 4 . In this case, the Procedure.Exposure.Time parameter of the digital model  102   a  of the experimental procedure is computed from the InSilico.ExposureTime parameter in the digital model  104   a  of the in silico physical system. The number samples in the digital model  102   a,  which is determined by the Procedure.Samples.Columns parameter is computed from the number of digital models  104   a  of in silico physical systems selected by the user. Also for example, the amount of TCR that is bound to the plate during each incubation phase is measured by recording the intensity of fluorescence given off by each sample in the concurrent “Measure” operation. The measure operation may be visually distinguished, for example being displayed as red to indicate that the data has not yet been captured. Once acquired, this data can be statistically or visually compared directly to model predictions.  
         [0067]     For example, the user may select three of the four digital models  104   a ( 1 )- 104   a ( 4 ) of in silico physical systems to map onto the digital model  102   a  of the experimental procedure model. The digital model  102   a  of the experimental procedure is automatically configured for a batch of three samples, and the Procedure.Exposure.Time parameters for each sample is automatically computed from the three selected digital models of the in silico physical system.  
         [0068]      FIG. 8  shows the how the theoretical (i.e., simulated) and empirical (i.e. measured) outputs of the digital models  104   a ( 1 )- 104   a ( 4 ),  102   a,  respectively, can be directly compared graphically and computationally in the same software environment within the same computational framework. The different graphical representations of the different digital models  104   a ( 1 )- 104   a ( 4 ),  102   a  displayed in a single view of a common user interface  130 . The properties of the combine hierarchical node represented by combine node icon pointed to by the cursor  251  is displayed in the properties panel  140   b,  showing the values of the volume and concentration of unbound TCR. The concentration is specified as a function of the TCR_u concentration in one of the digital models of the in silico physical systems (i.e., Plate  0 ). This evaluates to 3 mM, allowing all of the other experimental parameters to be computed as in the previous Figure.  
         [0069]     After completing the physical experiments, the entire procedure is highlighted, for example in blue, and the data for each of the four results are available and plotted  142   c  as illustrated in  FIG. 9 . By juxtaposing the input stimulus with simulated and measured responses or outcomes, the scientist can better understand how well their model matches observations. Validation of the model can include statistical metrics of how well the predicted and actual data match or could be based on qualitative assessment. The next step in the process is to attempt to find values of model parameters that minimize the error (e.g., least-squared error) between the predicted and actual curves for all four experiments. This is termed model optimization.  
         [0070]     In particular,  FIG. 9  shows a plot  142   c  for each of four experimental procedures superimposed with predictions from each of the digital models of the four in silico physical systems. The common execution environment allows data captured in the laboratory to be directly compared to predictions. Subsequent model changes can then be tested in the laboratory by automatically configuring experimental models in a closed loop process. Thus,  FIG. 9  shows a comparison of predictions from the optimized model with the original measured data. The common environment allows model and physical data to be juxtaposed.  
         [heading-0071]     Data-Driven Model Validation, Optimization, and Refinement  
         [0072]      FIG. 10  shows the results of the system  10  ( FIG. 1 ) automatically running a simplex algorithm to optimize the two rate constant parameters, Kf and Kr over the four sets of experimental data. The experimenter is now free to continue the process of model refinement and experiment design. In this case, a qualitative difference between the model and the data still persists. If this difference is considered important, new models structures or mathematical relationships can be rapidly compared to all existing experimental data. The integrated modeling environment allows such comparisons to take place automatically for a large data and model library. This regression testing capability allows many people to collaborate on model development and experimentation.  
         [0073]     The following provides more details on one implementation of the capabilities described above, specifically relating to: the general graph and math data model and to keyword replacement techniques 
    1. A universal graph-and-math object model and storage schema that allows simulation models and procedure models to coexist in the same file, database, and internal data structures.     2. A set of key words that can be used in math expressions which refer to the object&#39;s context in the graph structure. This greatly simplifies development and maintenance of the mathematical relationships within and between models. 
 
 The Data Model 
   
 
         [0077]     Both procedure and biological system models can be represented in a single relational database schema defined as follows. The two types of model can coexist in the same database instance and in the same in-memory object model.  
         [heading-0078]     Object 1: Nodes  
         [heading-0079]     SQL: CREATE TABLE TERAGRAPH.NODE (GUID VARCHAR (50) NOT NULL, TYPE VARCHAR (50) NOT NULL, FULLPATH VARCHAR (50) NOT NULL, DELETED CHARACTER (5), PRIMARY KEY (GUID))  
         [0080]     Field Explanations 
        GUID=Globally Unique ID for the Node (primary key)     TYPE=String defining the node type. Type is application specific and not constrained by the schema. All nodes types can be stored in the same schema.     FULLPATH=Sequence of GUID for nodes that contain this node. A node can only be found on one hierarchical path.     DELETED=A flag to indicate when the node has been deleted 
 
 Object 2: Edges 
 
 SQL: CREATE TABLE TERAGRAPH.EDGE (GUID VARCHAR (50) NOT NULL, “FROM” VARCHAR (50) NOT NULL, “TO” VARCHAR (50) NOT NULL, TYPE VARCHAR (50) NOT NULL, PRIMARY KEY (GUID)) 
       
 
         [0087]     Field Explanations 
        GUID=globally unique ID for this edge (primary key)     TYPE=String defining the node type. Type is application specific and not constrained by the schema. All nodes types can be stored in the same schema.     FROM and TO=GUIDs of nodes that represent the source and sink for this edge. These are quoted to overcome a keyword compatibility issue with Oracle&#39;s DB system. 
 
 Object 3: Node Properties 
 
 SQL: CREATE TABLE TERAGRAPH.NPROP (GUID VARCHAR (50) NOT NULL, NAME VARCHAR (50) NOT NULL, TYPE VARCHAR (50) NOT NULL, SETON VARCHAR (50) NOT NULL, SETBY VARCHAR (50) NOT NULL, ATTRIBUTES VARCHAR (200) NOT NULL, EXPR VARCHAR (3000) NOT NULL, UNIT VARCHAR (50), DOMAIN VARCHAR (100), VALUELOB BLOB (100 M) NOT LOGGED COMPACT, PRIMARY KEY (GUID, NAME)) 
       
 
         [0093]     Field Explanations 
        GUID=Guid of the Node that this property belongs to.     NAME=Key for this property. E.g. Volume, Concentration. Must be unique with respect to the node to which this property belongs. GUID+NAME is the primary key for this table.     TYPE=String representing the data type for this property. Any data type can be stored in this schema as long as it has a string or mathematical representation.     SETBY=User ID for last time this property value changed     SETON=When this property value was last changed     ATTRIBUTES=set of true/false values associated with this Node. Attributes are application dependent.     EXPR=The value of the property. Can be a constant value (“2”) or (“Dog”). Or, it can be an mathematical expression referring to other property values. As in “Model1.Species1.Concentration” which refers to the Concentration of Species 1 in Model1. In terms of the data model: “Concentration” is the Name field of a property whose GUID field refers to a node that has a Name property with the value “Species”. And Model1 is the value of a Name property for a node whose GUID appears in the FULLPATH field of the Species node!
 
 Object 4: The Edge Property Table 
       
 
         [0102]     This is the same as the node property table except that the GUID field refers to Edge table rather than the Node table.  
         [0103]     SQL: CREATE TABLE TERAGRAPH.EPROP (GUID VARCHAR (50) NOT NULL, NAME VARCHAR (50) NOT NULL, TYPE VARCHAR (50) NOT NULL, SETON VARCHAR (50) NOT NULL, SETBY VARCHAR (50) NOT NULL, ATTRIBUTES VARCHAR (200) NOT NULL, EXPR VARCHAR (100) NOT NULL, UNIT VARCHAR (50), DOMAIN VARCHAR (100), VALUELOB BLOB (100 M) NOT LOGGED COMPACT, PRIMARY KEY (GUID, NAME))  
         [0104]     Note: The SQL definitions of the database schema are for IBM DB2, but it is generally compatible will any SQL database and is a complete disclosure of our the schema. There are four tables: Node, Edge, Node Property, and Edge Property. The fields in each table have been described above.  
         [0105]     The in-memory data structure is similar in concept though implemented different for performance and efficiency reasons.  
         [0106]     Because both model procedures and biological systems are represented in the same data-model (in the database) or data structure (in memory), property value references can be used to compute parameters in one model from parameters in another as demonstrated above.  
         [heading-0107]     Keywords in Math Expressions  
         [0108]     A defined a set of context based mathematical keywords is provided to simplify the process of embedding mathematical expressions into a graph structure. A pre-processor converts these keywords into hierarchical name references prior to evaluation. Keyword replacement allows expressions to be written in terms of a node&#39;s context in the model instead of by using only absolute names. Some examples are:  
         [0109]     Inputs.Value→evaluates to a comma separated list of hierarchical name references to the Value property for all nodes connected to this node. In this case it evaluates to “A.Value, B.Value”. Using keyword replacement, one can write sum(Inputs.Value) which will be property evaluated on any node in the graph based on local connectivity, for example, as illustrated in  FIG. 10 .  
         [0110]      FIG. 10  also shows that the parameter or function “stdev(Inputs.Value)” is pre-processed to “stdev(Measure2.[1].Value, Measure2.[2].Value, Measure.[3].Value)”. And, it is re-evaluated any time that the graph structure changes.  FIG. 11  shows that this expression correctly evaluates to 1. The goal is to simplify the entry and maintenance of such expressions.  
         [0111]     Outputs.Value→evaluates to a comma separated list of hierarchical name references to Value properties for all nodes connected from this node.  
         [0112]     Items.Value→evaluates to a comma separated list of hierarchical name references for all connections to the node, for example as shown in  FIG. 11 .  
         [0113]      FIG. 12  shows that the parameter or function “Items.Value” is pre-processed to the same list as for previous example. Any time the contents of a hierarchical node are changed, this expression will be automatically re-evaluated.  
         [0114]     Row, Column, or Plate→Evaluates to a node&#39;s position in a Batch (Refer to AutoFill provisional) along any dimension. For example, Row*Column evaluates to 15 if the node is in Row  3  and Column  5 , for example in  FIG. 12 .  
         [0115]     Thus, the value of each node in the batch is actually computed based on its position in the batch (e.g., which column).  
         [0116]     Container.Value→evaluates to the hierarchical name reference for this nodes immediate container.  
         [0117]     Though keyword replacement is not essential for Closed Loop modeling, it is very important from a usability standpoint. Keyword replacement can be extended to include any context based relationships in a graph model such as physical containment, logical containment, reachability, connectivity, hierarchy level, specific types of node or edges, etc.  
         [0118]     Although specific embodiments of and examples for the apparatus and method of closed loop integration of in silico and physical modeling are described herein for illustrative purposes, various equivalent modifications can be made without departing from the spirit and scope of the invention, as will be recognized by those skilled in the relevant art. The teachings provided herein of the invention can be applied to other processor controlled systems, not necessarily the exemplary computing system generally described above. Likewise, the teachings provided herein of the invention can be applied to other workflow modeling tools, not necessarily the exemplary workflow modeling tool generally described above  
         [0119]     The various embodiments described above can be combined to provide further embodiments. All of the U.S. patents, U.S. patent application publications, U.S. patent applications, foreign patents, foreign patent applications and non-patent publications referred to in this specification and/or listed in the Application Data Sheet, including but not limited to commonly assigned U.S. provisional patent applications Ser. No. 60/454,756, filed Mar. 14, 2003, and entitled “METHOD, APPARATUS AND ARTICLE FOR GRAPHICAL MANIPULATION OF WORKFLOW USING EQUATIONS”; Ser. No. 60/493,749, filed Aug. 8, 2003, and entitled “BATCH-BASED METHOD AND TOOL FOR GRAPHICAL MANIPULATION OF WORKFLOWS”; Ser. No. 60/493,748, filed Aug. 8, 2003, and entitled “CLOSED LOOP INTEGRATION OF IN SILICO AND PHYSICAL MODELING”; Ser. No. 60/505,096, filed Sep. 22, 2003, and entitled “BATCH-BASED METHOD AND TOOL FOR GRAPHICAL MANIPULATION OF WORKFLOWS”; Ser. No. 60/508,109, filed Oct. 2, 2003, and entitled “CLOSED LOOP INTEGRATION OF IN SILICO AND PHYSICAL MODELING”; and Ser. No. 60/543,859, filed Feb. 11, 2004, and entitled “BATCH-BASED METHOD AND TOOL FOR GRAPHICAL MANIPULATION OF WORKFLOWS”; and U.S. patent application Ser. No. 10/799,451, filed Mar. 11, 2004, and entitled “BATCH-BASED METHOD AND TOOL FOR GRAPHICAL MANIPULATION OF WORKFLOWS,” are each incorporated herein by reference, in their entirety. Aspects of the invention can be modified, if necessary, to employ systems, circuits and concepts of the various patents, applications and publications to provide yet further embodiments of the invention.  
         [0120]     These and other changes can be made to the invention in light of the above-detailed description. In general, in the following claims, the terms used should not be construed to limit the invention to the specific embodiments disclosed in the specification and the claims, but should be construed to include integrated in silico and physical modeling methods, apparatus and articles that operate in accordance with the claims. Accordingly, the invention is not limited by the disclosure, but instead its scope is to be determined entirely by the following claims.