A Practical Process for Simulation Component Reuse

32
A Practical Process for Simulation Component Reuse Dissertation Proposal Presentation by Robert G. Bartholet 27 May 2005

description

A Practical Process for Simulation Component Reuse. Dissertation Proposal Presentation by Robert G. Bartholet 27 May 2005. Committee Members. Worthy N. Martin, Chair Paul F. Reynolds, Jr., Advisor John C. Knight David C. Brogan Harsha K. Chelliah Ernest H. Page. Thesis Statement. - PowerPoint PPT Presentation

Transcript of A Practical Process for Simulation Component Reuse

Page 1: A Practical Process for Simulation Component Reuse

A Practical Process for Simulation Component Reuse

Dissertation Proposal Presentation by

Robert G. Bartholet

27 May 2005

Page 2: A Practical Process for Simulation Component Reuse

2

Committee Members

Worthy N. Martin, Chair

Paul F. Reynolds, Jr., Advisor

John C. Knight

David C. Brogan

Harsha K. Chelliah

Ernest H. Page

Page 3: A Practical Process for Simulation Component Reuse

3

Thesis Statement

Component selection, applied to reusable simulation components, can be enhanced significantly by including considerations for the utility of component adaptation, simulation specific attributes, and other features that have not been considered in traditional approaches to component selection.

Page 4: A Practical Process for Simulation Component Reuse

4

Thesis Statement

Component selection, applied to reusable simulation components, can be enhanced significantly by including considerations for the utility of component adaptation, simulation specific attributes, and other features that have not been considered in traditional approaches to component selection.

Page 5: A Practical Process for Simulation Component Reuse

SIMULATIONCOMPONENT

DATABASE

SIMULATIONCOMPONENTDEVELOPERS

S1

S2

Sn

. . .

COMPONENTSELECTION

TOOL

IDEALFEDERATION

REQUIREMENTS

TH

EO

RY

BESTPRACTICES

M&S Reuse in the Ideal World

Page 6: A Practical Process for Simulation Component Reuse

6

What is Available?

ExecuteFederation

andPrepareResults

6

DevelopFederationConceptual

Model

2

DesignFederation

3Develop

Federation

4

DefineFederationObjectives

1

AvailableResources

ProgramObjectives

FederationObjectivesStatement

Federation Requirements

FederationConceptualModel

FederationScenario

Initial PlanningDocuments

Allocated Federates

FederationDevelopmentPlan

FOM

FED file

Modified Federates

Scenario Instance

RTI RID File

TestedFederation

TestingData

Test EvaluationCriteria

Reusable Products

UserFeedback

IntegrateandTest

Federation

5

Page 7: A Practical Process for Simulation Component Reuse

7

Software Reuse

SCAVENGINGSCAVENGING

S/W ARCHITECTURESS/W ARCHITECTURES

TRANSFORMATIONTRANSFORMATION

VERY HIGH LEVEL LANGUAGES

VERY HIGH LEVEL LANGUAGES

APPLICATION GENERATORS

APPLICATION GENERATORS

S/W SCHEMASS/W SCHEMAS

COMPONENTSCOMPONENTS

Krueger, 1992

Page 8: A Practical Process for Simulation Component Reuse

8

Related Work

• Metrics and Models

• Component Representation

• Selection Techniques

Page 9: A Practical Process for Simulation Component Reuse

9

Reuse Exemplars

),( ytfdt

dy

Page 10: A Practical Process for Simulation Component Reuse

10

Motivation

Page 11: A Practical Process for Simulation Component Reuse

11

Simulation ComposabilityComponent Selection (CS)

r1

r3

r4

r2

r5r6

Rx1

x3

x4

x8

x2

x6x7

x5

r8r7

X

CS: Is there a subset of X of cardinality k or less that covers R?

Example instance when k = 3.

CS is NP-complete.

Proof: reduction from SAT (Page and Opper 1999) and MSC (Petty et al. 2003).

CS can be approximated using GREEDY (Fox et al. 2004).

REQUIREMENTSCOMPONENTS

Page 12: A Practical Process for Simulation Component Reuse

12

Composability Assumptions

• Components are immutable.

• There exists a master set of components from which all possible sets of requirements can be satisfied.

• Requirements are known a priori and do not change.

Component selectionin the context

of simulation composabilityis inflexible.

Page 13: A Practical Process for Simulation Component Reuse

13

Thesis Statement

Component selection, applied to reusable simulation components, can be enhanced significantly by including considerations for the utility of component adaptation, simulation specific attributes, and other features that have not been considered in traditional approaches to component selection.

Page 14: A Practical Process for Simulation Component Reuse

14

Applied Simulation Component Reuse (ASCR)

• Leverage simulation specific characteristics in component reuse

• Exploit adaptability of components to satisfy requirements.

• What have we gained?– We no longer have to assume the existence of a master set

of components.

– We can more flexibly react to changing requirements.

– We can pre-select components based on over-arching simulation specific requirements.

• But…

Exploiting simulation specific characteristics and adaptationchanges component selection!

Page 15: A Practical Process for Simulation Component Reuse

15

ASCR Model

RCIZUIZU ,

ECI 22:

REZ 22:

MU RR 22:

BEHAVIOR DETERMINATION FUNCTION

BEHAVIOR MAPPING FUNCTION

UTILITY FUNCTION

Page 16: A Practical Process for Simulation Component Reuse

16

Assumptions and Notation

• θ: Upper bound on the number of requirements that can be satisfied by any one component.

• β: scaling factor which captures the change in utility encountered when a component satisfies multiple requirements

• uxyz: the utility of the xth component satisfying requirement y while satisfying z-1 other requirements.

Page 17: A Practical Process for Simulation Component Reuse

17

Adapting Components to Satisfy Requirements

r1 r2 r3 r4 r5 r6 r7

x2x2 x2

r1

r3

r4

r2

r5r6

Rx1

x3

x4

x8

x2

x6x7

x5

r7

X

CS CS-ASCRθ=3

Page 18: A Practical Process for Simulation Component Reuse

18

Computing Utilities

r1

r3

r4

r2

r5r6

Rx1

x3

x4

x8

x2

x6x7

x5

r7

X

CS CS-ASCR

θ=3

r1 r2 r3 r4 r5 r6 r7

u211

u212

u213

u241

u243

u242

u253

u252

u251

β reduces the number of computed utilities.

Page 19: A Practical Process for Simulation Component Reuse

19

Building a Bin View

r1

r2

r3

r4 r5r6

r7R

x1

x2

x3

x4

X

r1 r2 r3 r4 r5 r6 r7u111 u221u112 u222

u223u113

u321u322

u323

u331u332

u333

u432

u431

u433

u441u442

u443

u251u252

u253

u461u462

u463

u261u262

u263

u171u172

u173

u371u372

u373

REQUIREMENTS

COMPONENTS r1 r2 r3 r4 r5 r6 r7x1 x2

x3

x3x4

x4 x2 x4x2

x1x3

θ=3

Page 20: A Practical Process for Simulation Component Reuse

20

Building a Set View

u111 u171u112u172

u221 u251 u261

u371 u331 u321u433u443u463 u432

u442u223

u253u263

u252u262

u322u372

u323u333u373 u431 u461 u441

u222u252

u222u262

u332u372

u332u322

u442u462

u462u432

C1C2

C3 C4

Cr1 r2 r3 r4 r5 r6 r7u111 u221u112 u222

u223u113

u321u322

u323

u331u332

u333

u432

u431

u433

u441u442

u443

u251u252

u253

u461u462

u463

u261u262

u263

u171u172

u173

u371u372

u373

Scenario for x2

Page 21: A Practical Process for Simulation Component Reuse

21

CS-ASCR Definition

r1r2

r3r4 r5

r6

r7

Ru111 u171

u112u172

u221 u251 u261

u371 u331 u321u433u443u463 u432

u442u223

u253u263

u252u262

u322u372

u323u333u373 u431 u461 u441

u222u252

u222u262

u332u372

u332u322

u442u462

u462u432

C1C2

C3 C4

C

CS-ASCR (Informal): Is there an exact cover of R, constructed by choosing no more than 1 element from each Ci, with a total utility greater than k?

CS-ASCR is NP-complete (Bartholet et al. submitted to ACM/IEEE WSC 2005).Proof: By reduction from X3C.Optimization problem is NP-hard.

Page 22: A Practical Process for Simulation Component Reuse

22

Interesting Effects of θ and β

• θθ = 1, CS-ASCR is in Pθ = 2, complexity of CS-ASCR is openθ >= 3 but bounded, CS-ASCR is NP-completeθ is unbounded, CS-ASCR is exponential

• ββ=1, CS-ASCR is in P

Page 23: A Practical Process for Simulation Component Reuse

23

Generalizing the Result

r1 r2 r3 r4 r5 r6 r7 r8

θ=3

x1 x3x6

x6x4 x2

Modified definition of θ: utility can be dependent on selection of other components.

x6 x7x6

CS-ASCR-X: ASCR component selection with the modified θ.

Corollary: CS-ASCR-X when θ >= 3 is at least NP-complete (by reduction from X3C).

Page 24: A Practical Process for Simulation Component Reuse

24

Leveraging Simulation Properties

• Stochastic sampling

• Time

• Event generation

Page 25: A Practical Process for Simulation Component Reuse

25

Requirement 1: Model ground combat.

Requirement 2: Model air combat.

Requirement A: Provide up-to-date conflict adjudication data no less than once per minute.

Example of Leveraging Time

XX

X

MODEL GC1

MODEL GC2MODEL AC1

LANCHESTER ATTRITION

CALCULATED EVERY HOUR OF LOGICAL

TIME

STOCHASTIC ATTRITION

AGGREGATED EVERY 10 MINUTES OF LOGICAL TIME

STOCHASTIC ATTRITION

AGGREGATED EVERY 5 MINUTES OF LOGICAL

TIME

LOW

UTILITY

HIGH

UTILITY

HIGH

UTILITY

Page 26: A Practical Process for Simulation Component Reuse

26

Example of Leveraging Time

PRE-SELECTION

MODEL AC1MODEL GC2

TIME SCALE

FACTORED INTO

COMPONENT SELECTION

Page 27: A Practical Process for Simulation Component Reuse

27

Research Areas of Focus

• Define the problem

• Define the process

• Characterize complexity of ASCR

• Component selection

Sim Specific Characteristics

Adaptation

Page 28: A Practical Process for Simulation Component Reuse

28

Measures of Success

• Accurately formalized ASCR problem

• Defined a practical ASCR process

• Built practical methods for component selection

• Developed useful utility functions

• Analyzed complexity of critical algorithms in ASCR

Page 29: A Practical Process for Simulation Component Reuse

29

Expected Contributions

• Creation of a methodology that significantly improves state of simulation component reuse and provides practical methods for component selection

• Improved understanding of complexity of component selection

• Demonstration of how simulation specific properties can be leveraged in component selection

Page 30: A Practical Process for Simulation Component Reuse

30

Publication Efforts

Bartholet, Brogan, Reynolds, Carnahan. In Search of the Philosopher's Stone: Simulation Composability Versus Component Based Software Design. Proceedings of the Fall 2004 Simulation Interoperability Workshop, Orlando, FL, September 2004.

Brogan, Reynolds, Bartholet, Carnahan, Loitière. Semi-automated Simulation Transformation for DDDAS. Proceedings of the 5th International Conference on Computational Science, Atlanta, GA, May 2005.

Bartholet, Reynolds, Brogan. The Computational Complexity of Component Selection in Simulation Reuse. Submitted to the ACM/IEEE 2005 Winter Simulation Conference, Orlando, FL, December 2005.

Bartholet, Kuang, Son. Intelligent Decentralized Update Management in Real-Time Embedded Applications. Working Draft Completed. Submission in August 2005 to conference TBD.

Page 31: A Practical Process for Simulation Component Reuse

31

Conclusion

Component selection, applied to reusable simulation components, can be enhanced significantly by including considerations for the utility of component adaptation, simulation specific attributes, and other features that have not been considered in traditional approaches to component selection.

Page 32: A Practical Process for Simulation Component Reuse

Discussion