Upload
simone
View
36
Download
0
Embed Size (px)
DESCRIPTION
SEESO: A Semantically Enriched Environment for Simulation Optimization. Jun Han John A. Miller Department of Computer Science University of Georgia Gregory A Silver College of Business, Anderson University. Outline. Introduction Simulation Optimization (SO) Using SO for Glycomics - PowerPoint PPT Presentation
Citation preview
SEESO: A Semantically Enriched Environment for Simulation Optimization
Jun HanJohn A. Miller
Department of Computer ScienceUniversity of Georgia
Gregory A SilverCollege of Business, Anderson University
Introduction Simulation Optimization (SO) Using SO for Glycomics
◦ Overview of Glycomics◦ Glycan Quantification◦ Metabolic Pathways
Techniques for Simulation Optimization SESSO Framework Two Scenarios Conclusions
Outline
Conceptual model Domain Modeling Simulation Designing
and Execution Decision Parameter
Optimization
Gaps Among…
Optimization
Simulation
History of Simulation Optimization from 1987◦ 1987: “An art, not a science”◦ 1998: Systematic survey and introduction
◦ 2000: A sub-chapter in simulation textbooks◦ Numerous application and research on how to
integrate optimization and simulation◦ 2011: Regular track on Simulation Optimization in
WSC 2011
Simulation Optimization
Decision parameter Discrete ContinuousSolution Random Search Gradient methods
Random search methods◦ Random walk, Simulated Annealing
Gradient based methods◦ Steepest descent, Conjugate gradient, BFGS
Heuristic methods◦ Genetic algorithm, Particle Swarm Optimization
Meta-modeling methods◦ Response surface methodology
Sample path optimization◦ Monte Carlo Simulation
Simulation Optimization Categories
Glycan◦ produced by linking saccharides and attached to
proteins and lipids Possible Applications
◦ Cell differentiation◦ Disease processes◦ Cancer Markers
Glycomics◦ “an integrated systems approach to structure-function
relationships of glycans” ◦ Identification◦ Quantification
Using SO for Glycomics
7
The Big Picture
Omics Overview.http://jdr.sagepub.com/citmgr?gca=spjdr;90/5/561
Glycan Quantification. How?
Experiments Analysis
Label-free methods Isotopic labeling
◦ Static IDAWG™◦ Dynamic IDAWG™
Mass Spectrometry
Modeling Simulation Optimization Statistics
9
Quantitative Glycomics Workflow
MS Raw data
Raw data processing
Glycan Structures
Isotopic distribution calculation
Simulator OptimizerQuantification
and visualization
Yesoptimized?No
Pathway model
Mass Spectrum
model
Metabolism Biochemical reactions Metabolic Network
Metabolic Pathway
GalNAc (mucin-type) core synthesis/branchinghttp://www.ccrc.uga.edu/~moremen/glycomics/OglycanBranching/OglycanBranching/OglycanBranching.htm
SEESO: A Semantically Enriched Environment for Simulation Optimization
Bootstrapped by◦ JSIM: web-based simulation environment◦ ScalaTion: simulation environment using
domain-specific language (DSL)◦ DeMO: Discrete-event Modeling Ontology◦ SoPT: Simulation oPTimization ontology
Techniques for Simulation Optimization
Overview
SEESO
ScalaTion
JSIM
SoPT
DeMO
DomainModelerDomainModeler
Conceptual model
and Optimization
requirement
Optimization
result and visualization
Problems and Our SolutionProblem Our Solution
Communication and sharing of domain model and optimization problem Ontology
Transformation from domain Model to optimization algorithm
Domain Specific language (DSL)
Selection of proper optimization algorithms Rule inferencing
Use Common Random Number (CRN) to reduce variance
Independent replications Batch Means Ranking and Selection
General Simulation Optimization Formula
Simulator, Optimizer and (possible) Cost Analyzer
Loosely Coupled Iterative approach
General Simulation Optimization Architecture
Simulator
CostAnalyzer
Optimizer
{x}0 {(x, Y=R(x))}i
{(x, Y=R(x), Z=c(Y))}i
(x*, Z*)
{x}i+1
A Simple Example…
Objective Function Steepest Descent, etc.
def solve (x0: VectorD): VectorD = {
var x = x0 // current point var xx: VectorD = null // next point var gr: VectorD = null // gradient
breakable { for (k <- 1 to MAX_ITER) { // determine direction search gr = if (usePartials) gradientD (df, x) // use functions for partials else gradient (fg, x)
xx = lineSearch (x, gr) if (abs (fg(xx) - fg(x)) < EPSILON) break x = xx}} // for
x} // solve
Establish connection between numerous real world problems and optimization algorithms
Top level classes:◦ Optimization Component◦ Optimization Problem◦ Optimization Method
Simulation oPTimization (SoPT) Ontology
Optimization Component
Optimization Problem
Optimization Method
has-componentcan-solve
Optimization Component in SoPT
Optimization Goal Constraint
Nonlinear Constraint
Quadratic Constraint
Linear Programming
is-a
Objective Function
Nonlinear Objective Function
Quadratic Objective Function
Linear Objective Function
is-a
is-a
is-a
Solution
Restriction
Binary Restriction
Integer Restriction
Real Restriction
Mixed Restriction
is-a
Solution Quality
Approximate Solution Exact Solution
Heuristic Solution
is-a
is-ais-a
is-a
is-a
is-ais-a
is-ais-a
Optimization component
is-ais-ais-ais-a is-a
Optimization Problem in SoPT
Nonlinear Programming
Quadratic Programming
Linear Programming
is-a
is-a
Stochastic Programming
Optimization Problem
has-Constrainthas-Restriction
has-OptimizationGoal
Objective Function Constraint Optimization
GoalRestriction
has-ObjectiveFunction
Optimization Method in SoPT
Derivative Free
Optimization Method
Gradient based
Heuristic Method
Meta-Modeling Method
Random Search Method
Hooke and
Jeeves Direct Search
Simplex Method
Simplex Algorithm
Nelder Mead
Method
Conjugate Gradient Descent
Polak Ribiere
Conjugate Gradient
Interior Point
Method
Newton Method
Steepest Descent
Quasi Newton Method
BFGS Method
L-BFGS Method
Ant Colony Optimization
Genetic Algorithm
Bacterial Foraging
Optimization Algorithm
Particle Swarm
Optimization
Kriging RSM
Response Surface
Methodology
Quadratic Fit
Sample Path Optimization
Local Search
Simulated Annealing
Tabu Search
DFP Formula
DeMO + SoPT + DSL + Rule
Conceptual Model
Experiment design
DeMO classes
Domain modelDecision parameters
SoPT classes
Optimization ProblemOptimization algorithmRule Inferencing
DSL
Algorithm selection, configuration and execution
A set of Rules Rule inferencing (Rete algorithm)
Rule-based Algorithm selection
if (ObjectiveFunction is quadratic_objective_function) and (SolutionQuality is exact_solution) and (Constraint is none) and (Restriction is real_restriction) then (OptimizationAlgorithm is Steepest_Descent)
if (ObjectiveFunction is linear_objective_function) and (SolutionQuality is exact_solution) and (Constraint is integer_constraint) and (Restriction is integer_restriction) then (OptimizationAlgorithm is Simplex_Algorithm)
if (ObjectiveFunction is nonlinear_objective_function) and (SolutionQuality is heuristic_solution) and (Constraint is none) and (Restriction is real_restriction) then (OptimizationAlgorithm is Genetic_Algorithm)
Automatic Algorithm Configuration Algorithm execution using DSL
Optimization algorithm configuration and execution
Rule Inference Engine
Optimization Algorithm Selection
Algorithm Configuration
Algorithm Execution
OptimizationOntology
RuleVisualization
Scenario 1: Urgent Care Facility Model definition using DeMO Code generation using ScalaTion DSL Optimization algorithm selection using SoPT Optimization execution using DSL
entry: Source
nurseQ:WaitQueuetoNurseQ
doctorQ:WaitQueue
toDoctorQ
nurse: Resource
doctor: Resource
door: Sink
toDoor
Urgent Care Facility (cont.)
Substrate (E), Product (P), Enzyme (E)
Decision Parameters◦ Rate constants◦ Temperatures, Enzyme concentration, gene expression
level, etc.
Scenario 2: Metabolic Pathway
Gal1GalNAc1 Neu5Ac1Gal1GalNAc1 Neu5Ac2Gal1GalNAc1
β3 β3α3β3
α3
α6St6GalNAc2St6GalNAc1St3Gal1
CMP CMP CMP CMP
1 2
4 5
3
E + S ES E + Pkfkr
kcat
27
Metabolic Pathway Models:Petri Net and Systems of Differential Equations
Gal1GalNAc1
St3Gal1
Neu5Ac1Gal1GalNAc1
St6GalNAc1
St6GalNAc2
Neu5Ac2Gal1GalNAc1
Quantitative glycomics needs simulation optimization
Integration of ontology and DSL can facilitate modeling, simulation and application of simulation optimization for domain modelers
Conclusions
Questions?