cimsim2012 keynote component-based modeling and simulationteoym/pub/12/2012-sep... · 2....

52
CIMSIM2012 Keynote Component-based Modeling and Simulation Yong Meng TEO Department of Computer Science National University of Singapore email: [email protected]

Upload: others

Post on 07-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

CIMSIM2012 Keynote

Component-based Modeling and Simulation

Yong Meng TEODepartment of Computer ScienceNational University of Singaporeemail: [email protected]

Page 2: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Motivation• Model Development and Simulation program centric, model-centric to model sharing [31] reuse of simulation models is appealing reduced development time and cost [31] flexibility in meeting user requirements [65]

• Simulation Operating Environment Internet as infrastructure for model sharing – grid,

peer-to-peer, cloud computing, etc.

• Knowledge Sharing models (knowledge) sharing on a larger scale quantum leap in size and capability of simulation

applications25 September 2012 CIMSIM 2012 - Keynote 2

Page 3: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Outline• Motivation

• Related Work

• Component-based Modeling & Simulation Modeling & Simulation Life-cycle Cross-cutting Issues Syntactic Composability Verification Semantic Composability Validation

• Summary

• References

25 September 2012 CIMSIM 2012 - Keynote 3

Page 4: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Composability“capability to select and assemble simulation components in various combinations to satisfy user requirements” [94]

• Simulation component - “a reusable, self contained unit that is independently testable and usable in a variety of contexts.” [31]

25 September 2012 CIMSIM 2012 - Keynote 4

1

2

3

N

. . .

3

1

5222

8

3

N

Simulation BSimulation A

ComponentRepository

Page 5: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Levels of Composability

None

Technical

Syntactic

Semantic

Pragmatic

Dynamic

Conceptual

25 September 2012

com

posa

bilit

y

CIMSIM 2012 - Keynote 5

Page 6: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

VisionCOMPONENT

TOOLBOX

QueueingNetworks

Simulation Modelfor a Cluster Scheduler

Simulation Modelfor a Grid Meta-scheduler

25 September 2012

reuse of model components

reuse of base components

CIMSIM 2012 - Keynote 6

Page 7: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Component-based Approaches

25 September 2012 CIMSIM 2012 - Keynote 7

Software Engineering

Modeling & Simulation

Page 8: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Software Engineering vs Modeling & Simulation

25 September 2012 CIMSIM 2012 - Keynote 8

Page 9: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Related Work

• Cross-cutting issues [12, 40] Component abstraction [32, 40] Model reuse [12, 32, 40, 87, 96, 101, 135] Model discovery and selection [45, 92, 98, 101, 135] Syntactic verification [23, 54] …

• Semantic validation is non-trivial [95, 98] Not a closed operation Many aspects: data compatibility, logical, temporal,

formal, … Emergent properties ….

25 September 2012 CIMSIM 2012 - Keynote 9

Page 10: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Outline• Motivation

• Related Work

• Component-based Modeling & Simulation Modeling & Simulation Life-cycle Cross-cutting Issues Syntactic Composability Verification Semantic Composability Validation

• Summary

• References

25 September 2012 CIMSIM 2012 - Keynote 10

Page 11: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Life-cycle of Simulation Study

25 September 2012 CIMSIM 2012 - Keynote 11

Traditional (adapted from Banks et al., 2005)

Proposed Component-based Life-cycle

Page 12: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Cross-cutting Issues inComponent-based Modeling & Simulation

SyntacticVerification

component representation

dataencapsulation

loosecoupling

heterogeneouscomponents

ModelDiscovery

domainknowledge

component repository

ModelSelection

modelreuse

SemanticValidation

25 September 2012 CIMSIM 2012 - Keynote 12

Page 13: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

CoDES: ComposableDiscrete-event Scalable Simulation

25 September 2012 CIMSIM 2012 - Keynote 13

[ANSS2008]

Page 14: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Outline• Motivation• Related Work

• Component-based Modeling & Simulation Modeling & Simulation Life-cycle Cross-cutting Issues Syntactic Composability Verification Model and Component Representation Hierarchical Component Reuse Describing Domain Knowledge EBNF Composition Grammar Example: Queuing Networks Implementation

Semantic Composability Validation

• Summary• Rferences

25 September 2012 CIMSIM 2012 - Keynote 14

[AMS2007,ANSS2008,PADS2010,WinterSim2011]

Page 15: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Syntactic Composability Verification

• “capability to combine and recombinecomponents without substantial integrationefforts” [3]

• How (a formalism to) Guides the composition Represents conceptual model for discovery &

validation

25 September 2012 CIMSIM 2012 - Keynote 15

Page 16: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Syntactic Verification Process

25 September 2012 CIMSIM 2012 - Keynote 16

Page 17: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Model Representation

• A network of components linked by connectors

• Types of connectors: One to One One to Many (Fork) Many to One (Join)

• Component-Connector Paradigm + components as black-boxes = loose coupling and data encapsulation

25 September 2012 CIMSIM 2012 - Keynote 17

Page 18: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

• A black-box with in and/or out communicationchannels

• Meta-component abstraction: attributes: mandatory & specific behavior: a finite timed state automaton

• Implemented using our proposed COMLstandard (XSD schema)

25 September 2012

Component Representation

[Il ]Sp[t] Cond n St[Ol ][Am ]

CIMSIM 2012 - Keynote 18

Page 19: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Hierarchical Component Reuse

25 September 2012 CIMSIM 2012 - Keynote 19

within a domain across domains

Page 20: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Describing Domain Knowledge

• Enrich model description to support syntacticverification, discovery, semantic validation, …

• COSMO (COmponent Simulation and ModelingOntology) component-oriented simulation within and across

application domains high-level ontology (simulation); low-level ontology

(application domain): OWL-DL and RDF

25 September 2012 CIMSIM 2012 - Keynote 20

Page 21: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

COSMO Ontology

ComponentBase Component

Model Component

AttributeBehavior Worldview

Data

Constraints

DestinationSourceType

Transition

State

Statehas_Inputhas_Output

Condition

has_Constraints

25 September 2012 CIMSIM 2012 - Keynote 21

Page 22: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

COSMO Ontology: Queuing Network Example

25 September 2012

Component

Base Component Model Component

QN_BaseComponent

Source Server Sink

interArrivalTimeMean

Distribution

serviceTimeMean Policy

is_ais_a

is_a

has_IATime has_SrvTime has_Policy

has_SrvTimeDistrhas_ArrivalTimeDistr

CIMSIM 2012 - Keynote 22

Page 23: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

EBNF Composition Grammar• 2 parts:

(a) CoDES Composition RulesSimulator := (Comp Con)+ Con := ConO | ConF | ConJComp := Base_Comp | Model_CompBase_Comp := QN_B_Comp

#CoDES Reuse RuleModel_Comp := QN_Simulator|MC_Simulator

Reuse acrossapp domains

Formal

Scalable

25 September 2012 CIMSIM 2012 - Keynote 23

[AMS2007,ANSS2008,PADS2010]

Page 24: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Example: Queuing Networks(b) Domain Specific Composition Rules

#Base ComponentsQN_B_Comp := Source|Server|Sink

#QN Composition RulesQN_Simulator := Source BlockNT+ [Terminal]|

Source BlockT+Terminal := ConO End|ConF (“(“End”)”)+|ConJ EndEnd := Source|Sink

BlockNT := ConF (“(“Box BlockNT* [ConJ Box BlockNT*]”)”)+|(ConO Box [BlockNT])+|_

BlockT := ConF (“(“Box BlockT* [Terminal|ConJ BlockT*]”)”) ConO Box

[BlockT])+|_

Box := Server|Model_Comp

25 September 2012

C1 C3C2

CIMSIM 2012 - Keynote 24

Page 25: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Implementation Details• Component representation COML schema implemented in XSD and XML validated using XML parser

• COSMO ontology created using Protégé specified using RDF (Resource Description Framework)

• Composition grammar EBNF Java parser using Earley’s algorithm

• Model discovery & selection implemented in Java Matching Index computation uses Jena Reasoner on the COSMO

ontology • Verification of syntactic composability composition grammar parser written in Java

25 September 2012 CIMSIM 2012 - Keynote 25

Page 26: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Outline• Motivation• Related Work

• Component-based Modeling & Simulation Modeling & Simulation Life-cycle Cross-cutting Issues Syntactic Composability Verification Semantic Composability Validation Approach General Model Properties Formal Model Execution Validation Cost

• Summary• References

25 September 2012 CIMSIM 2012 - Keynote 26

[PADS2009-2011,WinterSim2009,JoS2012]

Page 27: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

• Does a composed model produces semanticallycorrect results?

• Key issues: Not a closed operation [10] Various perspectives [88]:Logical Temporal FormalAccuracyCost

Semantic Composability Validation

25 September 2012 CIMSIM 2012 - Keynote 27

Page 28: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Semantic Validation Process

25 September 2012 CIMSIM 2012 - Keynote 28

Page 29: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Approach• Semantic validation is computationally expensive

• ObservationsMore invalid than valid models Discarding a model as invalid is generally

cheaper than proving absolute validity

• Incremental approach Progressively eliminates invalid models Increases accuracy and credibility Higher computational cost

25 September 2012 CIMSIM 2012 - Keynote 29

Page 30: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

25 September 2012

Model Population

CIMSIM 2012 - Keynote 30

Page 31: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

25 September 2012

Approach – Syntactic Verification

VALID(syntax ✓)

INVALID(syntax ✗)

CIMSIM 2012 - Keynote 31

Page 32: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

25 September 2012

INVALID(syntax ✓, semantic ✗)

Approach – Semantic Validation

INVALID(syntax ✗)

CIMSIM 2012 - Keynote 32

Page 33: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

25 September 2012

Approach – Semantic Validation Valid = Syntax + Semantic (model properties + model execution)

INVALID[model properties]

Syntax Verification

INVALID[reference model]

INVALID(syntax ✗)

General Model Properties

Model Execution

CIMSIM 2012 - Keynote 33

Page 34: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

How

25 September 2012

1. General model properties Correct and meaningful component communication Safety, liveness, deadlock-free – with time

- Covers software engineering + simulation perspectives[PADS 2009, PADS 2010]

2. Formal validation of model execution Comparison with reference model using state machine

- New time-based formalism defines validity- 5-step process validates model execution over time

[WinterSim 2009, PADS 2011]incr

easi

ng a

ccur

acy

& co

mpu

tatio

nal c

ost

CIMSIM 2012 - Keynote 34

Page 35: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Layered Approach Detail

25 September 2012 CIMSIM 2012 - Keynote 35

increasing accuracy and costs

Page 36: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

1.1 Component Communication• Quantifies degree of semantic compatibility between

the reused components with respect to newlycomposed model

• Composability Index:

25 September 2012 CIMSIM 2012 - Keynote 36

Page 37: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

1.2 Component Coordination

25 September 2012

• Guarantee that the logical coordination of components is correct

• Validate the logical coordination of components with respect to all possible combinations of states; transitions are instantaneous

• Properties: Safety – “Nothing bad ever happens” Entire composition: deadlock free, a property holds throughout the check Individual components: a property holds throughout the check

Liveness – “Something good will always happen” Individual components: a specific state is always reached

• Represent using Promela + employ SPIN model checker• Suffers from state explosion => attributes and time are

abstracted awayCIMSIM 2012 - Keynote 37

Page 38: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

1.3 Meta-simulation Validation

• Guarantees composition safety and liveness through time

• We propose validity points to specify safety and transient predicates to specify liveness

• Properties Safety – Validity points [PADS2009] - data that must pass through

various connection points in the composition VP1 = d1 {origin = Server, destination = Sink, range = 10;

35, type = double} Liveness – Transient predicate - predicate that must become false

during a given time interval after it becomes true. transient(C2) = (busy == true)

• Transform into Java hierarchy and execute25 September 2012 CIMSIM 2012 - Keynote 38

Page 39: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

2 Formal Model Execution Validation

• Software engineering Model properties - safety, liveness, deadlock-free, … Simple state machines and few attributes; often timeless

• Simulation Complex state machines & larger #attributes that change

over time => insufficient Composed model is a valid abstraction of real system ->

requires validation of model execution over time Current state-of-the-art (Petty&Weisel) propose a timeless

formalism => general model properties are previouslyvalidated; no fork/join; no feedback loops

25 September 2012 CIMSIM 2012 - Keynote 39

Page 40: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Comparison with Petty & Weisel’sFormal Composability Theory

1. Formal component representation

2. Composition

3. Reference model

ZZ ff ZZ

C1 C3C2

M f3 o f2 o f1

-static-unfeasible

- component order- no fork & join - no feedback loops

-assume to exist a-priori

- time-based- dynamic

- time-based- fork & join - feedback loops

constructed from generic description

Our approach

25 September 2012

S1*

S1*

S2*

S2*

S4*

S4*

S5*

S5*

S1S1 S2S2 S4S4 S5S5

af3

bf2

df3

af3*

bf2*

df3*

CIMSIM 2012 - Keynote 40

Page 41: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Time-based Formalism

• Component function representing input, states & time vs integer

function

• Mathematical composability time vs integer domains

25 September 2012

Expressive

Orders time

)()()()( |),( relationbinary bijective the exists thereiif composable are

and then},1,|),{(model composeda Given

jm

jn

outi

inj

im

jn

jiji

ttTTttR

ffnjiffM

CIMSIM 2012 - Keynote 41

Page 42: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Time-based Formalism (2)

• Simulation Time-ordered functions => fork, join, feedback loops

• Validity: compares with reference model over time Exact match New degree of similarity index based on related

simulation states ( )

25 September 2012

Dynamic execution representation

Measure of similarity

<f1,O1, 5> <fi,Op+1, tp+1-tp> <fj,Oq+1, tq+1-tq>

CIMSIM 2012 - Keynote 42

Page 43: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Degree of Semantic Similarity

V (p,q) {(p,q) | p q }

f in ( p)

p

f out ( p)

f *in (q)

q

f *out (q)

p q DS(s(p),s*(q)) DF( fin (p), f *

in (q)) DF( fout (p), f *out (q))

22

- same component is executed- composition states are related:- related attributes (in the ontology)

- same value or- same trend

25 September 2012 CIMSIM 2012 - Keynote 43

Page 44: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

5-Step Validation Process

25 September 2012

(1) Formal Representation (2) Unfolding

and Sampling

(3) Composition

(4) Simulation

(2) Unfolding and Sampling

(3) Composition

(4) Simulation

(5) V

alid

atio

n(5

) Val

idat

ion Strong equivalence?

L(M) V L(M*)?

(1) Formal Representation

Composition CompositionC1 C3C2 C1 C3C2

Valid

Valid

Invalid

sampledvalues

L(M) L(M*)

C1 C1*

Yes

Yes

No

No

… …

Composed Model Reference Model

CIMSIM 2012 - Keynote 44

Page 45: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

• Simple example #components = 1,000 fork/join = 10% #states = 3 states/component no feedback loops

• Larger example #components = 20 fork/join = 25% #states = 9 states/component feedback loops =10%

Validation Cost

25 September 2012

CIMSIM 2012 - Keynote 45

More results in [PADS2011, JoS2012]

Page 46: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

ValidationRuntime (s)

n=100 n=500 n=1,000

1. General Model Properties

A. Component Communication 0.1 0.3 0.5

B. Component Coordination 195.6 320.4 412.3

C. Component Coordination over Time 97.3 120.6 160.8

2. Formal Model Execution 15.3 209.5 420.6

TOTAL 308.3 650.8 994.2

25 September 2012

Validation Cost Breakdown

Simple Examplen=1,000; fork/join ratio = 10%;

General Model Properties : Formal Validation45:55%

It takes 49 seconds to simulate and

17 minutes to validate

CIMSIM 2012 - Keynote

Simple ExampleGeneral Model Properties - Formal Validation

5 - 55%It takes 49 seconds to simulate

and17 minutes to validate

Large Example

General Model Properties - Formal Validation87 – 13%

It takes 1.3 minutes to simulateand

27 minutes to validate46

Page 47: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Summary

• Component-based modeling Component abstractions: meta-components, domain knowledge

representation [ANSS 2008] Model discovery and selection: partial matches [ANSS 2008,

WinterSim2011]

• Syntactic composability verification EBNF composition grammar [AMS 2007, PADS2010]

• Semantic composability validation: Approach [PADS 2009, PADS 2011] General model properties [PADS2009, PADS2010] Formal time-based formalism of model execution [Wintersim

2009*] Costs of validation [PADS2011, JoS2012]

* ACM SIGSIM Best PhD Student Paper Award

25 September 2012 CIMSIM 2012 - Keynote 47

Page 48: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Summary

25 September 2012 CIMSIM 2012 - Keynote 48

proposedCoDES

ANSS2008

ANSS2008

WinterSim2011

AMS2007, ANSS2008

AMS2007,PADS2010

PADS2009-2011,WinterSim2009,JoS2012

Simulation examples: queuing networks, grid virtual organizations, military troop training

Page 49: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Open Problems

1. Who (and how to specify) the reference model for validation?

2. Techniques to reduce model state space in larger models

3. What about emergent properties?

25 September 2012 49CIMSIM 2012 - Keynote

Page 50: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Emergent Properties

25 September 2012 CIMSIM 2012 - Keynote 50

System Properties

Emergent Properties

Design Properties

Syntactic VerificationSemantic Validation

Prediction or Detection Semantic Validation

“The whole is greater than the sum of its parts” - Aristotle

Publications1. C. Szabo and Y.M. Teo, An Integrated Approach for the Validation of Emergence in

Component-based Simulation Models, Proc of Winter Simulation Conference, IEEE ComputerSociety Press, Berlin, Germany, Dec 9-12, 2012.

2. C. Szabo and Y.M. Teo, An Objective-based Approach for Semantic Validation of Emergencein Component-based Simulation Models, Proc of 26th ACM/IEEE/SCS Workshop on Principles ofAdvanced and Distributed Simulation, pp. 155-162, ZhangJiaJie, China, Jul 15-19, 2012.

3. Y.M. Teo and C. Szabo, Semantic Validation of Emergent Properties in Component-basedSimulation Models, Book Chapter in Ontology, Epistemology, and Teleology of Modeling andSimulation – Philosophical Foundations for Intelligent M&S Applications, edited by Andreas Tolk, pp319-333, Springer-Verlag, 2013.

Page 51: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

Publications - www.comp.nus.edu.sg/~teoym 1. C. Szabo and Y.M. Teo, An Approach to Semantic-based Model Discovery and Selection, Proc of Winter

Simulation Conference, pp. 3054--3066, IEEE Computer Society Press, Phoenix, Arizona, USA, Dec 11-14, 2011.

2. C. Szabo and Y.M. Teo, An Analysis of the Cost of Validating Semantic Composability, Proc of25th ACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, pp. 62-69, IEEE ComputerSociety Press, Nice, France, June 14-17, 2011. [also in Journal of Simulation, 2012]

3. Claudia Szabo, COMPOSABLE SIMULATION MODELS AND THEIR FORMAL VALIDATION, PhD Thesis,Department of Computer Science, National University of Singapore, 2010.

4. C. Szabo and Y.M. Teo, On Validation of Semantic Composability in Data-driven Simulation, Proc of24thACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, pp. 73-80, IEEE ComputerSociety Press, Atlanta, USA, May 17-19, 2010.

5. C. Szabo, Y.M. Teo and S. See, A Time-based Formalism for the Validation of Semantic Composability, Procof Winter Simulation Conference, pp. 1411-1422, IEEE Computer Society Press, Austin, Texas, USA, December13-16, 2009, (ACM SIGSIM Best PhD Student Paper Award).

6. C. Szabo and Y.M. Teo, An Approach for Validation of Semantic Composability in Simulation Models, Procof 23rdACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, pp. 3-10, IEEE ComputerSociety Press, New York, USA, Jun 22-25, 2009.

7. Y.M. Teo and C. Szabo, CODES: An Integrated Approach to Composable Modeling and Simulation, Proc of41stAnnual Simulation Symposium, pp. 103-110, IEEE Computer Society Press, Ottawa, Canada, Apr 13-16,2008.

8. C. Szabo and Y.M. Teo, On Syntactic Composability and Model Reuse, Proc of the International Conferenceon Modeling and Simulation, pp. 230-236, IEEE Computer Society Press, Phuket, Thailand, March 2007, (invitedpaper).

25 September 2012 CIMSIM 2012 - Keynote 51

Page 52: CIMSIM2012 Keynote Component-based Modeling and Simulationteoym/pub/12/2012-Sep... · 2. FormalModel Execution 15.3 209.5 420.6 TOTAL 308.3 650.8 994.2 25 September 2012 ValidationCost

25 September 2012 52

Thank you

http://www.comp.nus.edu.sg/~teoymEmail: [email protected]

CIMSIM 2012 - Keynote

Acknowledgement: This keynote is based on the PhD work my student, Dr Claudia Szabo, currently with the University of Adelaide, Australia.