Article View: comp.simulation
Article #125SIMULATION MODELING AND ANALYSIS
From: SIMULATION DIGEST
Date: Fri, 22 Apr 1988 14:14
Date: Fri, 22 Apr 1988 14:14
167 lines
7888 bytes
7888 bytes
Volume: 1, Issue: 3, Fri Apr 22 10:14:06 EDT 1988
+----------------+
| CONTENTS |
+----------------+
(1) SIMULATION who's who
(2) Static Analysis vs. Simulation
(3) Simulation at MITRE (Moving Time Window)
##########################################################################
Date: Fri, 22 Apr 88 08:25:26 EDT
From: jwm@stdc.jhuapl.edu (James W. Meritt)
To: simulation@bikini.cis.ufl.edu
Subject: SIMULATION who's who
To follow up on Antoni GUASCH:
I'm: James W. Meritt (Jim is fine)
Johns Hopkins Applied Physics Laboratory
Johns Hopkins Road
Laurel, Md 20707
301-953-5000 x 4580
jwm@aplvax.jhuapl.edo
I do all kinds of strange (?) stuff, but my MS concerned
advanced modelling under Operations Research / Systems
Analysis at the Naval Postgraduate School. I've done
some continuous time-step and some event simulation in
Fortran and a touch in C. Currently I'm looking (part time)
into object-orientated rule-based languages, especially
KEE. I've used simscript, but really wouldn't put too much
faith in my ability.
Disclaimer: Individuals have opinions, organizations have policy.
Therefore, these opinions are mine and not any organizations!
Q.E.D.
jwm@aplvax.jhuapl.edu 128.244.65.5
##########################################################################
##########################################################################
Date: Fri, 22 Apr 88 08:43:28 EDT
From: jwm@stdc.jhuapl.edu (James W. Meritt)
To: simulation@bikini.cis.ufl.edu
Subject: static analysis vs. simulation
(+) CLOSED-FORM SOLUTION
(-) SIMULATION
(+) Gives dandy expected values for lots of situations, expecially exploiting
the well-defined queueing models, for instance.
(+) marginal values often fall out.
(-) you might be able to, but I was much better at constructing rv generators
to fit a complicated set of assumptions than explicitely defining the
distribution.
(-) It is easier (for me) to get marginals and resultant distributions from
a simulation. Statistical analysis of multiple runs is vitally important,
since I was told to shy away from any point estimate of almost anything.
This might be a fallout of my (-) just above.....
Ref your debatable notes:
2. As companies are coming out with visually (and object) oriented
simulation products, will simulation always *cost* more than picking
out formulas from someone's textbook on closed-form problem solving
methods? What exactly are these "costs"?
I feel like taking this one on:
With simulation, if you want to do even a passable job, you have to know the
properties of the system. This analysis might cost more, but sometimes you
get the results without even doing the simulation just by getting ready!
And you really have to be careful of those picking out "textbook" closed-form
methods:
1. Your situation will seldom fit the given solution example.
Do you know the differences and their impacts?
2. The problem solver might not be able to solve (or find) the
appropriate formulation & will force the system to fit the
methodology instead of the other way.
Object-orientated methodologies, at least to me recently, really force you
to look at the "objects" with with you are dealing.
Understanding is ALWAYS important, no matter what method you use.
##########################################################################
##########################################################################
Date: Fri, 22 Apr 88 08:35:53 EST
From: sokol%mwcamis@mitre.arpa
Organization: The MITRE Corp., Washington, D.C.
To: simulation@bikini.cis.ufl.edu
Subject: Current MITRE work
--------
Our group at MITRE has been working on parallel discrete event
simulations...We have developed Moving Time Window (MTW) which
is an optimistic, hybrid approach to scheduling discrete simulation events
for parallel execution. It requires that a simulation be partitioned into
objects. Each object assumes that the messages in its event queue is a valid
set of temporally ordered messages. Each simulation object is responsible
for scheduling its own simulation events and maintaining its temporal
integrity by using a set of scheduling constraints. Each MTW simulation
object uses a set of rules to determine which events can be scheduled for
parallel execution and which for sequential execution. These constraints
attempt to exploit two very different kinds of parallelism: between simulation
objects and within simulation objects.
MTW limits the allowable local simulation time difference
between simulation objects. This time difference is controlled by the size of
the time window. Only those simulation events whose execution times are
within the time window are potential candidates for execution. The time
window may be moved up to introduce new simulation events into the execution
queue when the processors begin to run out of executable events.
The simulation object uses a set of constraints to determine
which events in the set of potential candidate events can be scheduled for
parallel execution and which must be scheduled for sequential execution.
Events are examined in a strict time increasing order. The constraints act to
preserve simulation event causality relationships. This is necessary because
one task may depend on the effects of another.
Moving Time Window is an optimistic approach. Sometimes
this optimism is not justified. On those occasions, a message will arrive
with a time stamp earlier than the object's local simulation time but later than
the beginning of the time window. This type of event is called a time
anomalous event. MTW uses three strategies to deal with anomalous events.
The first strategy is to reconstruct temporally correct information using
historical records. The second strategy is to initiate temporal rollback and
reconstruct a more correct event history. The third strategy is to do nothing,
as
some types of anomalous events do not require any action. The goal of this
constraint based strategy selection is to minimize the cost of anomalous
events in synchronization overhead while maintaining temporal integrity.
We have also developed a parallel object-oriented language,
Possum in order to support our parallel simulations. Possum is superficially
similar to ROSS, an object-oriented language developed at RAND specifically
for simulations. The main resemblance between ROSS and Possum is
that messages can be stated in an English-like format. Possum allows multiple
inheritance. Possum is implemented in Butterfly Scheme, a parallel Lisp
dialect implemented on BBN's Butterfly multiprocessor.
Parallel processing and the MTW scheduling algorithm have
increased our test case simulation speed considerably. Early test simulations
run on Butterfly 68000 nodes using interpreted Butterfly Scheme indicated
a speedup of 300 percent due to Moving Time Window. We have just
completed the upgrading our machine to 68020 nodes and compiled Scheme. Our
existing simulations are running 20 times faster. A simulation which ran in
over 2 hours now runs in less than 10 minutes.
Lisa Sokol
sokol@mitre.arpa
(703)883-7855
##########################################################################
########################
END OF SIMULATION DIGEST
########################
Technical Details
Message-ID:
<15115@uflorida.cis.ufl.EDU>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!purdue!gatech!uflorida!simulationShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!purdue!gatech!uflorida!simulation From: simulation@ufl.edu (SIMULATION DIGEST) Newsgroups: comp.simulation Subject: SIMULATION MODELING AND ANALYSIS Message-ID: <15115@uflorida.cis.ufl.EDU> Date: 22 Apr 88 14:14:14 GMT Sender: fishwick@uflorida.cis.ufl.EDU Reply-To: simulation@ufl.edu Lines: 167 Approved: fishwick@fish.cis.ufl.edu