Composition in Modeling Macromolecular Regulatory Networks Ranjit Randhawa September 9th 2007.

Slides:



Advertisements
Similar presentations
Modeling and Simulation By Lecturer: Nada Ahmed. Introduction to simulation and Modeling.
Advertisements

Crucial Patterns in Service- Oriented Architecture Jaroslav Král, Michal Žemlička Charles University, Prague.
Component Oriented Programming 1 Chapter 2 Theory of Components.
Chapter 9: The Traditional Approach to Design Chapter 10 Systems Analysis and Design in a Changing World, 3 rd Edition.
OBJECT ORIENTED PROGRAMMING M Taimoor Khan
Object-Oriented Analysis and Design
Date:2011/06/08 吳昕澧 BOA: The Bayesian Optimization Algorithm.
Chapter 1 Object-Oriented System Development
Oct 31, 2000Database Management -- Fall R. Larson Database Management: Introduction to Terms and Concepts University of California, Berkeley School.
1 The scanning process Goal: automate the process Idea: –Start with an RE –Build a DFA How? –We can build a non-deterministic finite automaton (Thompson's.
IBM WebSphere survey Kristian Bisgaard Lassen. University of AarhusIBM WebSphere survey2 Tools  WebSphere Application Server Portal Studio Business Integration.
The Architecture Design Process
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
Information Systems Development and Acquisition Chapter 8 Jessup & Valacich Instructor: Ramesh Sankaranarayanan.
Geography 465 Overview Geoprocessing in ArcGIS. MODELING Geoprocessing as modeling.
Chapter 1 Program Design
An algebra of Connectors for modeling CommUnity with Tiles joint work with Roberto Bruni Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
User Interface Design Process Gabriel Spitz. User-Interface design Steps/Goals Understand who are the users and what do they do Articulate how will users.
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
Environment Change Information Request Change Definition has subtype of Business Case based upon ConceptPopulation Gives context for Statistical Program.
Your Interactive Guide to the Digital World Discovering Computers 2012.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Objects What are Objects Observations
Pathway Modeling and Problem Solving Environments Cliff Shaffer Department of Computer Science Virginia Tech Blacksburg, VA
1 Chapter One A First Program Using C#. 2 Objectives Learn about programming tasks Learn object-oriented programming concepts Learn about the C# programming.
A First Program Using C#
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Methods For Web Page Design 6. Methods Why use one? What it covers –Possibly all stages Feasibility Analysis Design Implementation Testing –Maybe just.
Simple Program Design Third Edition A Step-by-Step Approach
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Web Services Experience Language Web Services eXperience Language Technical Overview Ravi Konuru e-Business Tools and Frameworks,
An Introduction to Software Architecture
Composition and Aggregation in Modeling Regulatory Networks Clifford A. Shaffer* Ranjit Randhawa* John J. Tyson + Departments of Computer Science* and.
Putting together a complete system Chapter 10. Overview  Design a modest but complete system  A collection of objects work together to solve a problem.
Object-Oriented Modeling Chapter 10 CSCI CSCI 1302 – Object-Oriented Modeling2 Outline The Software Development Process Discovering Relationships.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
IBM Software Group ® Overview of SA and RSA Integration John Jessup June 1, 2012 Slides from Kevin Cornell December 2008 Have been reused in this presentation.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
Generic API Test tool By Moshe Sapir Almog Masika.
1 Extend is a simulation tool to create models quickly, with all the blocks you need and without even having to type an equation. You can use a series.
Systems Analysis and Design in a Changing World, 3rd Edition
DataBase Management System What is DBMS Purpose of DBMS Data Abstraction Data Definition Language Data Manipulation Language Data Models Data Keys Relationships.
18 April 2005CSci 210 Spring Design Patterns 1 CSci 210.
Environment Change Information Request Change Definition has subtype of Business Case based upon ConceptPopulation Gives context for Statistical Program.
Programming with Visual C++: Concepts and Projects Chapter 2B: Reading, Processing and Displaying Data (Tutorial)
Aggregation Connector: A Tool for Building Large Molecular Network Models from Components Thomas C. Jones Jr 1, Clifford A. Shaffer 1, Alida Palmisano.
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
Chapter 12 Object-oriented design for more than one class.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Chapter 4 Basic Object-Oriented Concepts. Chapter 4 Objectives Class vs. Object Attributes of a class Object relationships Class Methods (Operations)
Fusing and Composing Macromolecular Regulatory Network Models Ranjit Randhawa* Clifford A. Shaffer* John J. Tyson + Departments of Computer Science* and.
Composition and Aggregation for Molecular Network Modeling Ranjit Randhawa*, Cliff A. Shaffer* and John J. Tyson** Departments of Computer Science* and.
Climate-SDM (1) Climate analysis use case –Described by: Marcia Branstetter Use case description –Data obtained from ESG –Using a sequence steps in analysis,
Instance Discovery and Schema Matching With Applications to Biological Deep Web Data Integration Tantan Liu, Fan Wang, Gagan Agrawal {liut, wangfa,
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Program Design. Simple Program Design, Fourth Edition Chapter 1 2 Objectives In this chapter you will be able to: Describe the steps in the program development.
Design Evaluation Overview Introduction Model for Interface Design Evaluation Types of Evaluation –Conceptual Design –Usability –Learning Outcome.
Copyright © 2015 Rockwell Automation, Inc. All Rights Reserved. PUBLIC PUBLIC CO900H L19 - Studio 5000® and Logix Advanced Lab.
Object-Oriented Analysis and Design
Unified Modeling Language
J. Michael, M. Shing M. Miklaski, J. Babbitt Naval Postgraduate School
Distribution and components
Appendix D: Network Model
Composition and Aggregation for Biological Pathway Modeling
An Introduction to Software Architecture
DATABASES WHAT IS A DATABASE?
Implementation Plan system integration required for each iteration
Presentation transcript:

Composition in Modeling Macromolecular Regulatory Networks Ranjit Randhawa September 9th 2007

Motivation/Problem Models are reaching the limits of human comprehension Making the model suitable for stochastic simulation increases the number of reactions by a factor of 3-5 Models of the Mammalian cell cycle will require (more for stochastic simulation)

Our Approach We recognize four distinct activities related to model decomposition Fusion: Take existing models and merge them Composition: Build up from existing models, no information hiding Aggregation: Build up from building blocks, controlled interfaces Flattening: Merge the building blocks back into a “flat” (non-composed) model

Relationships

Fusion Given two or more existing models, we wish to create a new model that combines the information Remains standard SBML We provide a tool to support users combining models Implemented in “wizard” style

Composition Connects submodels together to form a hierarchy of models Submodels are each valid SBML models Add language features to SBML to support composition Describe hierarchy Describe interactions, links, replacements No information hiding within models

Composition and the Fusion Wizard There are significant similarities between fusion and composition Fusion defines a series of steps taken to merge models Series of steps captured by the fusion tool can be viewed as an “audit trail” used in generating the mapping tables Precisely this same information can be used to describe the set of instructions needed to connect/link the submodels for composition

Is Composition the Right Model? Composition allows us to take existing models and use them as components to build larger models No information hiding Submodels might fit together more or less well Links let us replace things in one model with things in another Good for legacy models (?) We might do better to build models from components designed to work as components, with proper information hiding

Aggregation In aggregation, models are built up from components designed for aggregation. Each component could be, for example, a collection of reactions This collection exposes certain variables for input/output via ports/interfaces Hopefully this is a natural concept for modelers Not intended as a solution for reusing legacy models

Flattening The purpose of flattening is to generate a standard SBML file from our modified file, for the purpose of running simulations, etc. An automated form of fusion The composition/aggregation language features provide exactly what the user would provide in fusion, so automation is possible

SBML Language Features Contains 1 or more structures (which can be flat or composed models) Allows for multiple instances of the same model Types (merge/replacement) Enables grouping (e.g. N to N links) Ignore/Exclude ability A link with an empty field

SBML Language Features Input/output ports Currently species are outputs and parameters are inputs Boolean input attribute Ports connect to: Parameters Species Other ports (used for multiple level aggregation) Modifiers (?) Modifiers will need to be “special” input ports (hence the use of the input field/attribute) Or can one just replace modifiers with parameters?

Instance and Links Syntax <instance id="instanceOfSubmodel1_1" xlink:type="simple" xlink:href="#xpointer(/sbml/model/listOfSubmodels/model />

Ports Syntax Syntax: ObjectRef.SubobjectRef for port Target field (as well as Link To/From fields)

Status of Tools Fusion Wizard Implemented Composition Wizard Implemented and combined with Fusion tool to produce the Fusion/Composition Wizard (needs a new name)… Aggregation Connector Implemented prototype Currently working to be able to traverse up/down aggregation tree. Flattening Algorithm Implemented for Composition Need to extend it for Aggregation as well

Evaluation How does one evaluate the approaches? What are the metrics? How will we know if we are successful? How to recognize a solution?

Creating Larger Models 3 sample models from Tyson & Novak 2001 Approaches: Submodels fused together Additional components added to fused model (in red) Submodels composed together Additional components added to composed model (in red) Modified submodels aggregated together

Sample models

Initial Fused Model

Fused Model with New Components

Conceptual Composed Model

Implemented Composed Model

Screen shots Composition Wizard Final Species Mapping Table

Screen shots Composition Wizard Final Reaction Mapping Table

Aggregated Submodels

Aggregated Model

Screen shots Aggregation Connector

Observations Fusion 1st round of submodel construction 1st round of fusion 2nd round of model construction (adding additional components) Composition 1st round of submodel construction 1st round of composition (resolving components and first round of linking) 2nd round of model construction (updating reactions and adding new components) 2nd round of composition (resolving newly added components and second round of linking) Aggregation 1st round of submodel construction 1st round of aggregation (linking ports)