Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
l
To:
From:
Subject:
Abstract:
MASSACHUSETTS INSTITUTE OF TECHNOLOGY
Project MAC
Memorandum MAC-M-362 November 22, 1967
Project MAC participants
J. J. Donovan
Techniques for the Digital Simulation of Complex Systems
The purpose of this paper is to present a straight forward method for the char acterization and the digital simulation of discrete state changing systems. To demons trate the method portions of a digital simulation of the clinical chemistry laboratories of Yale-New Haven Hospital a re used . The paper also discusses how a dig i tal simulation is used to gain infor mation about the performance of such systems, simulat ion output, and validity of a model .
(
,_
c
I. Intro'duction
One view o:~ the process involved in ~omputer applications is
depicted in Figure l.
PROBLEM t (object system) l
I
STRA.CTION techniques COMPUTER -computer IMPLEMENTATION
language (model)·
Figure 1 A view of dig ital S'i.mulation
A simulation of a system described by a set of c,ifferential
l
equations may fo Llo~ this process. The set of differential equations
form the abstrac1ion . These equations may be implemented on an
analogue computei·. They may also be implemented on a digital
computer using numerical techniques and an algorithmic language ,
or using a language such as MADBLOCK, MIDUS, PACTOLUS, or BLOODI
which is especially suited for simulation of systems t hat may be
described b~ differentiai equations.
· A ~ystem such as a hospital, bank, or factory cannot be direct ly
described by a set of differential equations. These systems are
composed of people, machines, queues , or other componer1:ts which
have quite different relationship~ among these cornp_onents. Such
systems have many event s to which they are responsive. Such systems
ane called discrete state - changing systems or complex systems . This
paper is concerned with the app lication of the process, depicted in
the a,bove figure, to the s imulation of complex sys tems.
2
The purpose of this pape r is .to ,present a s ~ra i ghtforward
methocl for char,icterizing and ·simulating complex syi;;tems.
The method presented allows the user to a) ·mpdel the elements
and characteri/~tics . of a sy.stem ·py set of n-tuples and b) specify
the operations i,n ·th.e Sy$tem by a sequence of translations on the
n-t1J.ples.
continued on page 3
..
c
3
Before di,cussing our views on simulation, we will distinguish
the functional from the si:ructural aspects of a modl l or a theory .
This distinctio11. has peen aptly made by Prof. A. Oetting0r : ( 1]
11 /1. forn.:t: io nal model is like the electrical <.'n~i1Wl'r's provcrbi.::il
" black box," where something goes in and somcthin~ c,.1ml's l,ut, and
what · is inside is unknown or relevant only to t ltl' L'X t L'nt L,f $1.1m<:'1ww
r elating outputs to i nputs. A structural model emphasiZL'$ the>
con·tents o:j: the hox . A curve describing the current passing
through a semiconductor device as a func t ion of the "Oltage applied
across its terminals is a funct.ional model of this device that is
exceedingly u~eful to electron-circuit designers . Most often such
curves are obtained by fitting a smooth line to actuf!l cqrrents and
voltages measurec for a number of devices. A corresponding structura l
mo.del would accot·.nt for t:he characteristic stop? of ~le curve in
t erms that describe the transport of charge-carriers throuih semiconductors,
the geometry of the contacts and so forth . A gnocl structural mntkl
typically has g.n ater predictive power than a func.:ti\)1w 1 one. In
this case it would predict changes in the voltag·e>-curct;nt chqracteristics
when the geometry of the interface or the impurities in the semiconductor
are varied."
This paper is concerned with the structural simulation of
discrete state- changing systems, where the changes in the state of
t he system occur at discrete i ntervals. The systems are modeled
as network flow systems with the f o llowing character i stics :
4
the :;ystem contains "components" (or " e l1 ·ml!nt~") each
of which performs a prescribed function;
items flow through the system, from onL' c )1111w1wn r to
apother, requir ing the per formann' of th l' p 1·l'$('n t L'Ompoucnt
func t ion before the item cnn mov~ on t ,.) t '1c m•xt c1)m1w1wnt;
components have a finite capacity and a non-zero p·rocess
time_; hence items may have to wait in "wa i. ting l ines''
or "queues" before being processed .
To d_emonstrate this ·model we will use portions of a digital
simulation of the clinica l c hemis try laboratories of Yale - New
., Haven Hospital. we use t he struct µr~l model to anal~ ze and predict
system b~havior . In particular, we wish to use the r. todel to
evaluate the effEct of varying equipment parameters, hospital pt'ocedures.
introduct ion of ,, time-shared digital computer systen, software
parameters, techrician parameters. The principal tl1e~1sures of system are
performance produced by the modelAthe process t ime of biological
samples, eq uipment utilization, job queues, and response time to an
emergency reques~ .
II. Modeling Technique
a . Underlying Systems
Complex systems may be viewed as comprising two underlying
systems, an information system and a materia l s handling system . The
materials !tand ling system dc~ls with physical qua ntit i es. The
c
5
i n format ion .. sys cem deals with information . Their iuter relations hip
is depec t ed in F Lgure 2 . We wil l u·se the term "cllmplc~ system"
or " s ystem"to rl !fer to t he ent"ire system, or the mat eriai's handling
sys t em, or t he jnfo.r ma tion system. The underlying systems of a
complex. sys t em may t hemselves be complex .systems.
materials >,L .• materials .~ . ::;>, m.tt<'l'ials band ling
I . . -
I . I \JI obser~at io:1' .
1 l -~ontro I
informa tion 7 '. -·--·{ infor mation l-- -> infprmation
Figure 2 · Unde r ly ing s ys tems of a complex system .
b . Abstracted Model
s e·t of n-tuples
Each e Lemcnt of a complex system may be represented by an
n -tuple of scalar s xl'x2
, ... ,xn . Tl)e set of all n-tup,les wi ll be
writte n ~o' where the subscript 11 0 ° denotes t hat s0
is the set o(
n-tuples ass ociated wi t h t he ob ject ~ys t em.
Sc·alar s
·r h e element s of the system have individual charac\;eristics.
Correspondingly, each xk of then-tup le has a value that characterizes
t he part icul ar element and a domain of permissible va 1ues. Some
6
sca lars have in i. t ial value s .that never change whilC' others havt>
values that are continually changing . A scalar may r0f0 r to a
proper t y of the element, its pr i or i ty, its time of c-n try in to the
system, i t s stat us, or its locat i on in the sys t em . We wi l l •
characterize all objects in the system by a set of n-tuplcs , where
n may be different fo r differ'ent objects.
Subsets of n- tuples
If the scalar x~ denoted we i ght or co lo r of an n- t uple and this
n-tuple characterized a queue , then the value of x1
wo uld have no {
meaning . In general , if every element of a system w0re cha racterized
by an n- tuple of exactly n scalars, many scalars char acte r iz ing a
particular type of element woul d have no meaning . E1.ements with
similar characterist i cs will be separated into subsets with a fixed
number of scalarn. If C denotes a subset q, then- t uples would be q
-wr itten as folloi1s:
c [t 1, · · · ,t] qr · . s
where q denotes the partic ular subset, and r thl' rnc·mlH-r 1) C th ,1t ~up~1a' t .
(
7
TranslatJon
As time,, p,-ogresses .in a sys tem, ope.rations ocnit-. A rocket
is launched, a t,lood sample is entered into the> lab11rntt1q or a·
laborat?ry test result is recorded. .we will account for t l1 esc
operations by changes · in the value of the scalar$ of the n-t.uples
associa ted with the object. A cha~ge in the value of a single
scalar will be called~ translation. If .x. is a scalar of the n-tuple l .
x1
,x2
, . .• ,x ., . •• ,x then a translation on then-tuple might result . 1 · n .
Since an ope rat i 1n1 may result
in many system· changes, an operat.ion in the object s.1stem may
correspond to many translations a~ong the set of n-t11ples s0
• A
specific translation does not necessarily operate on all n-tuples.
It makes no sense for a ground crew to be launched . Further, the
outcome o f a tra11slation must not result in scalar v,lues th.at are
outside the doma i n of possible values.
Precisely, a, translation may be represented by
T(i ,j , k,S]
where T denotes a translation, i denotes that the object is
represented by an i~tuple and hence is in the subset of i-tuples
for the system, j denotes the index of the member in the subse t of
i-tuples, k denotes the scalar used, and S denotes the substitutiqr
rule for replacing the scalar.
Subst itution Rule
If xk is the scalar characterizing the time a rocket is launched,
then the s.:ime 1'iUbstitution rul e assoc iated wi th xk wou l d .:ipp l y tC1
8
all i - tup les representing rocket ships . The subHtltution rule
would be "rcp.la(~e the present val ue 0£ xk with tllc ,·ucn'nt t imc . 11
c . Digital S1mulation Model
The number of scalars i:i.ecessary to mocl el cv0ry i: lwrac t cr istic
of an object or. the number of n-tup les necessary to mod~l ever~·
element in the object system may be unlimited. When a digital
simulation model S of an abstracted model S is construc t ed , m o
the numb·er o f n-tuples and scalars of the model i s bounded by the
f i n i te size a nd speed of the computers used for the :; imulat ion .
At t his point in our discussion we will review our terminology .
Three d is t inct sys t ems are now be:j.ng considered : 1. an object
system, 2. the abstr~cted model, 3. t he digital simulation model.
Each nf these systems has a corresponding t erminology:
Ob ject 'System Abstrac ted Model D:ig i tal Simulation M.pde.l
set of n-tuples s Sc.- t of n-tuples s 0 m
co l lection of ob~ects
n - tuple of s n- tuple of s 0 m
object
· characteristic scalar scalar
collection of objects wi th subset_ of s 0
subRct of s m
simi lar characteristics
In add i tion, time is meas1,.1red differently in each o f the three
sy~tems. The object system time is cont inuous and may be measured
by a r ea l clock . Model time is discrete and is ml'asurccl by o r dt'H'd
(
9
sequences of tr.1nslations . Digital simulation tilll(' (tlie time it
takes th e compu1:er to process the model) is cont j nu,,us and may be
measured by a n;al clock . We say that one hour o f niodcl time has
passed when the translations that correspond to the operations in
one hour of obj~ct time have been executed.
Timing of Operations
The timing of operations is contro~lcd by clements of the
system it'self. Recogn~zi n_g which elements c:ontro t tile timing of the
operations in a system is of utmost impo.rtancc to .the understanding
of the system. Correspondingly, the order of trans 1,-t ions among
the set of n-tup )es, S , should be contro lled by tile clements 0£ 0
the set S . 0
d . Procedure for Constructing a Digital Simulatio n
We will construct a digital simula.t io'n for an object system
in the following steps :
1. choose the important elements and characteristics of
the obj~ct system (the set S ). 0
· 2. define the set of translations T[i;j,k,S] that correspond
to the operations on these elements .
3 . recognize the elements that control the timing of opeLatio~s.
and define the timing of translations among tlte st' t S . 0
4. define the set of n- tuples S corrcspondinr, t o LIH' s<.'t m
S and gtve i nttial values where necessary to t ill' s ,:alars o[ S . o m
10
5. wr i te routines for the translat ions T of S l-·orrcspond i n g 11\ Ill
to the translat~ons T of S. 0 0
6 . implement ~ t iming routine which wi ll control the timing
o f the trans l atjons o f S . m
e. Application of a Model
A purpose o f simula t ing a system i s to answer qut•stions about th e
pel: formance of the system. What i s the effec t of va1· ious param0ters on
system performance ? What is the performance of the sys tem to a prescribe d
job -load? What i.$ the effect 6£ various parameters c.,[ the components' o f
the system? Are any components saturated or near saturat i on?
if a system is v iewed as a se t of n-t uples, the operation . of the
system may be analyzed quite simply. The .performance of the system
may be spec ified by a ~equence o f translat ions . The effect o f va-rious
paramete rs of the components of the system may be im cs t i µJ.ted by
varying the values of the scalars cor~espond ing to these parameters.
(For example , to study the effect of replac i ng a machine that nails
tieels on shoes with a machine that ope rate s f aster, we simply n~place
the scalars c harac terizing the time spent with each shoe with new values . )
The effect o f changing the route of flow o f materials or information
through the sy~tem may be investigated by changing t he order of trans lations.
The saturat ion po i nt of the system or .:.i component i~ defined ns
that state of the system in wh ich an audition o( work Lo Lh<' sy:;tcm
causes no additional output f rom the system. The saturation point
of a component of the sys tem can· be f ound in two wavs . We can
vary the values of the scalars of the n - tup le foi· tl1t.) component
11
and thereby determine the saturation parameters under a fixed load.
We can also vary the number of n - tuples for the jnt<'racting compOnli'nts
and thereby determ·ine the job load tha t wi 11 saturale th~~ compo ricnt.
under study.
The r (?ma ind er of the paper will cxemp lify these points by
discussing a digital simulation of the Clinical Chem i stry LabN·atory
of the Yale New Haven hospital.
III Model fo r a Clinical Laboratory
( a . Isolation of Laboratory functions
The main fLnction of the clinical laboratory is to process
biological specin•ens in order to extract medical informat ion from
them.
As with many complex systems the clinical chemistry laboratory
is composed of two interrelated systems, a ma terials 11andling system
and an . information system. The information system may be subdivided
into three infoqnation syst·ems . An overall view of the four s,Ys terns
and their interrelationship is shown in Figure 3 .
.reagents, was t e , energy , .samples ---
materials handlin system
control
12
data
- I !medical information! ,
. - - .,,,. report management system -~-- .:.. I 1 ·
Figure J .Und~rlying sy~tems of clinical chemistry .laboratory
'The first system.,
t'he materials handling system is concerned with the physical
handling and proc.essing of these specimens. This system handles
inputs of specimens, chemical reagents, and energy . Its outputs
are data and waste. The procedures that are followed in the laboratory
comprise the sec,onq _system, the control information s ystem. The
· third system, calle.d ·the management information sys t em, is conc'erncd
with items such as personnel utilization and evalua.t ion of changes
in personnel, equipment, or procedures. The> fourth sys_tem, cal led
t:he medical information ~~stem, has as inputs data from tl1e contro l
manageP).ent information systems. Its outputs are tJ1e compiled ward·
repor ts.
The model has enabled us to isolate and analyze many of the
laboratory procedure? and components. Thus the response to variations
in the scalars of the model r~flect the response of the syste.m to
(
13
variation; of cl1.1racteri.stics.
For the r e maind~r of this pape r WC' will he mai.n~y l'O ll.l; l~. n wd xvitli th._•
ma terials hartdl 1ng sys t em. The principal measurc•s c,f system performancl!
wi ll be process time of biological samples, equi pment ut ili%ation ,
job queue s, response time to a n emergency request.
b. Parameters of the Model
Some of tlrn principal s ystem parameters. that WL~r e modeled by
scalars are list<!d below-:
A. Equipment par,:1met.ers
1. rime t o process an element
2. capacity to hold . unprocessed elements
3 . numper of elements which may be proc.ess.ed simultaneously
B· Software parameters
1. prioritie s
2 . dynamic alloq1tion of priorities . (The parameters
fo r dynamic allocation of priorities ~nabl c us t o
study the effect of differen t scheduling po~icies.)
3 . modeq o f operation, Le., "time slici ng" and "elem nd
operation." In time slicing mode each procedure
(program) returns control to an executive sys tem
a fte r a fixed amount of time. In demand operat ion·
mode control is returned to the o.xeeutivt' program
aft<.'r cnch interrupt rc-garclll'ss nl whjch prn1•.r;1111 w;1s
bci1.1g cxL~l'lltL'd. These pi:on.•durl'S L'lHlti:t, I t il l' pr-i nL i ng
14
ward reports, patient r eports , collecling data in
real time, etc . (The cf[l!Cts on systl'lll perfonn.tnc:e
in r esponse to each of tl1t.> mpqes w,1s 111arkcd Ly
different . )
c. Environment characteristics
1. number of t echnicians
2. number o f c entrifuges
3. number of stations
D. Computer parameters
1. speed of computation
2, che speed of various input out devices
3 . s torage size
c . Simulation Oytpu~
The modeler usually wants to know the respo~se of his model
to changes in ihe yalµes of the parame ters of his model . A
straightforward way to provide this in£ormation is to print th~
status of the µiodel at periodic intervals of time, i. e ., by printing
the values of pe~tinent s~alais associated with each n-tuplc. The
·table of Figure 4 below ·gives a portion of the output describing
the state o f the model of a clipical laboratory. This output is
not in the best format but it does demonstrate how the viewpoint of
systems presented earlier may be used to give meaningf~l output from
a model. The .sets of n- tuple s presented in the table r epresent
queues, storage s , facilities, and controlling clements . The
15
pertinent scalars associated with each queue n-tuple are maximum
contentents, total entries, etc. The name of the laboratory components
that correspond to these n - tuples are not given here. A complete listing and . .y
urther discussion of . the model mayte.g., QUEUE NQ~ber 2 corresponds to the line o~ e found in [2] -- ---
whole blood biological samples at the punch bench). A modeler may
(
use the characteristics of a queue to determine if a queue is progressively
building up and thereby become saturated.
IV Digital Simulation of Laboratory
We now outline the steps l, 2, and 3 in section ]I.d for an
example simulation. Steps 4, 5, and 6 will be given in section V.
1. Choice of important elements and character istics in object
system
The choice of important elements and characteristics in the object
system may be very difficult. The level of detail., the elements, the
characteristics chosen is dependent of the questions to be investigated
when using the model. With -respect to the laboratory we wished to
answer questions which dictated a very detailed simulation (e.g., the
effect of various parameters of the components of the system, the
orgainzation of the laboratory, saturation of components.
We wish to choose a. set of n-tuples to characterize the chemistry
laboratory and group then-tuples into subsets, where the elements
in a .subset have the same number of scalars. Each subset will
generally represent one type of element. The most obvious sets of
elements in the laboratory are technologists, biological samples,
and equipment. Other sets of elements include queues and storages.
The subset of then-tuples representing biological specimens
will be represented by a set of k-tuples x1
,x2
, •• • ,xk, for some
number k. Each scal~r characterizes a particular sample and
takes on values from a finite, discrete domain . The first scalar
has a binary domain with value 1 i f a urea test was requested and a
16
:z; -,, .- ...: -J - ;. .. ..... - -z '
, - .... < < c :::- - ='- C, c c c c c c :: <: - ,..._ ..,,. ., "._ .... -· -
< :.. z V) ._ ' ...:
'< ('" -~ (<" c. > "'· ::.. c r < . - :-. ' .: .... <
> -· ,:-- .. ,::_ .( , . ~ ~
.... l' ·::-.. :~ ;:.·
.... ,.._, . c c c ' c c- c '~ ;- ~ ,r "' (' ,· ;"' ..,.. ::- "" " C' :..r • ..$" rr- ·...::: c u. .:. ..... •.. re, (' (' :-,
0 ,.._ f"" ' 'J' ...... v· < :y
C'. ..l -= ,c i"'.' i... ...... - I-c. !."-
, V: ·.r "· c-· •r ( c c.. '..L •• C' :.r. I',. I'' l!.. :? C' c ·- ..... - -::- _, c :r 7 :... :- ,._... <, .. .- C· c ... -:: r- ..: c •r , c. " I- < x 1...·. - -· - ..... - ,r '
r·. I- ,, ... ;r ::::: .. '" " ,. .. (.. i- r:· r--
L!..J '-' ' ,..... ,. < r ,_ _ ... ::
> " r' " ::- :- - :..:I -< -. cc ::, > c..
I- < u v: ...... :- :- I..'", -- ,..,.
I- ;:>
•.r ' ::: (' r- :::' 0
< ..:. c.
c .... -:-"' .J.. c ' •I". :r "- """
-.: .. :n -: -t• - c· r.. r- ..;: ("1 -~ ::- ~
(' " ~· r. (', - './' ,.: ,- ...: :, '- - ,- --..... ..: ..,.
u.. ·r c ·a:. 0 r- C" ;;:, ?. \.. r, :', ·- :: ~ t.: .... ,- .. C,. , · . . 0 < ....... ..... ... ~ r- ._ < J.:
- ,_ , !"' .... ,_,; :c > 7 ...-l
e =· E ·- ·~ en
c , .. ,. .~ "· ; - ..,. " :". ..... <.." ·- ... ~ ..;. .. - L' -· ..:-- ...·
,r ' :: .!' "" ..:: ,- .... ,... -· ...: r. •, c ;-, "- N r- r- c. " -. ..... -- ,t (' ,.- - ('. (' '- " .... :;;· ....... ~ ... - .. ~
I-! > -· x I- ,-:. < CJ .-:- .. .... ,_ .• .... ~ - .. ::)
L: ::.0 .,.. ~
' ·' ..: ..: ,. ll ('- ..,..
' ... · ..: r- >- c - " ;-, .. , ';' ,..... , . ( .... r "- , - L
·- ,J ..-.. : -· ~
-;·
·- ~- ~·-..-: l.
(
17
value O if it was not, and so forth fo r t he remai11ii1g· loborator.y
tests. '+he ninnteenth scalar denotes tlw time of L'lltry of t he sample
into the system , and ·its domain nay be chosen as t lu· i ndc>x 9 f one
or the . 1 minut~· i nterval s between .8:00 a.m. to 5 : 0C· p . m.
Similar ly oth~r scalars of this subset of n-tuples a r e used to
model other sample characteristics.
S.ome scalat" s have f ixed values w!1ile .others have values ·that
ch~nge iJith resp,~c t to time or ~ome other: parameter •.) f the system.
For example , the number of samp l es tha t a technician has ye t to
process varies wi th time. In the model of \;he clinical l aboratory,
a the assignment of a value t~~scaia r that varies wi th time · or some
other parameter is imple~ented with the use of t he VARIABLE f eatur e
or FUNCTIONS f eature of GPSS. For example, it w~s obse rved
that the technician operating the cloride machine took an increasing
length of time to place a samp le in the machine as tbe day went
on. This time may be .approximated
.2
. 1
II' :-ime t? _piace .sample · I 1 n mac nine
time of day 5 p,m.
by the f unction shown above. This was i mpleme nted tn t he model, ·
It is int erestLng to note that wl1en (cont i nued on page 18)
18
we wished t o invest igate the effect of replacing th:; technician
with a machine the only characterist ic that had t <.l t e changed was
the time to place a sample in a machine . This wa s accomplished by
simply rep.lacing the FUNCTION definition card with a .1otht.~r one
characterizing t i me fo r a mach i ne sample in the machine .
2 . Def inition of translations :
The set of translations are chosen to simulate the operations
of the object system, in th is case the labor atory. One such operation
is the change of a sample ' s priority . In the corresponding translation,
T[i, j,k,S], i wou:\.d denote the s ubset of n-tuples representing
biological samples, j would denote the particular n-tuple, and k
would denote the scalar characterizing priority. Thi• s ubst i tut ion
rule· would be: "replace the value of scalar k with the value
x'' where the value of x is assumed to be known.
An operativn that corresponds to many translations is the
recording of arrival times of biological specimens . For one transla tion
we let i and j denote then-tuple character izing the processing
technician· and k denote the scalar characteriz ing his s ta~e (busy
or not busy). The substitut ion rule ~ould be as fol l ows : If the
sca lar designated by ,k is in the "bu.sy" state, then th is translation
cannot be performed; if the scalar is in the "not busy" state , the11
the value of the scalar is given a new value to denote a busy state
and other translations on the same n-tuple for the technician are
performed . Thus the values of the scalars character izing utilization
n'nd otlwr statisti.c:s .:1rL' upda t L'd . 'l'hl' rt.'L'<n·clj1rg <'f ;.irrival I imt•:-. must
(
19
also have a corresponding translation that upclat;t's the n-tuple
characterizing the biolog:j.cal specimen waiting t o b ! time punch1,' d .
3. Rec·ognitic•n of elementfi that control t iming :
As stated previously, it is important to recognize the clements
that control the timing of operations in the object system.
Correspondingly, then-tuples r epresenttng these controlling elements
should contrql t he timing of translations in the set S . The m
major controlling elements in the materials handling information
system of the clinical laboratory are the biological specimens .
If no samples ari·ive then no operations occur, except perhaps the
technician ' s lunch or coffee breaks. If the sample is sent as an
emerg.ency it is hand led accordingly.
The overall timing and flow of the material s hpndling is
shown in Figure 5. Using the concept that certain el ements
control the timing, the laboratory may be viewed as a permanent
structure through whicJ, biological samples flow. Th t samples
arrive (point 1 i n Figure 5) and are time stamped by a technician.
Depending on the tes t requested, the samples go either to the technicians
processing whole blood (point 2) or to the centrifuging area (point J) .
At these points the samples are processed by personnel and equipment,
and then continue on to a specific test area (points 6 through 12) .
Then-tuples representing the biological samples must cause
translations that change the values of their scalars characterizing
their position in the sys tem.
20
Figure 5 Overall view of t~1e clinical chemistry laboratory
(for hanclling b l <.?od sa h1 plc ~ j.
c .
2l
V. Implementation
The implementation of the s imulation. compr ise!· steps 4, 5, and
6 of section II.d . In the discussion so tar, simulation has been
described independently of any computer or computer language. To
implement the simulation on a di'gital computer computer·· LaL,guc!.ges
such· as ALGOL, MAD, or · FORTRAN could' be used. However, ;,1 gn•,H
prograrnmfng effor t would .be necessary to implement the set of n-
tuples, translation ro~t ines, and t iming routines . Since a
siml!lation language_ has many of the$e routines incorporated in the
language, using one of these languages is usually easier. The reason
for using a s i muJ.atior,. l anguage rather than any other comp uter
language is that many o f the rout ines which implement the set of
n-tuples, trans1ations, and timin_g are written in various clegrefJs
of completeness depend ing qn the language. for example, GPSS has
entities .that ma_y readily ·be u~ed ,to represent n-tup Jes .
A detailed model of t he Clinical Chemistry Lcibo:ratory of the
Yale -°l'.Jew Haven Hvsp ital nas· been constructed using a · modified•'<
version of the computeF simulation language GPSS III [3 ].
Parts of the laboratory were also simulated in another si1hulation
language SIMS<;RIPT [ 4 ] . The entire mod~l is presented in [2] .
a. Jmplementing ·n-tuples
If FORTRAN or MAD is used, then-tuples may be defined by a
1'( Modifications inc luded ~he adaptation of GPSS to run on an IBN
DCS 7094-7040 system [ 5], the adaptation of GPSS to hanclle a program as large as the model for the labora t ory, and the addition 9£ instructions to facilitate handling of sets.
22
DIMENSION state,nent . . A(l) ,A(2), , . . ,A(20) would con:espond to an
n-tuple a1 ,a
2, . . ,a
20 and A(l) wo1,1ld refer to the sc., lar ai. If a
simulation language is used it is not .always the task of the modeler
to define the s~t of n-tuples S that correspond to S • The language m o
GFSS has predefined entities that may be used as n-tuples.representing
elements of an object system.
b. Implementing Transla~ions
If FORTRAN~ MAD, or SIMi>CRIPT is used to implement the
translations, T[i,j,k ,S], subroutines would have to be written that
would operate on all scalars of the n-tuples i,j. The substitution
rule would define the algorithm to be used by the subroutine . A
modeler using SIMSCRIPT follows a similar procedure for most
tr~nslations.
The simulation language, crss, provides several of the r~utines
necessary to implement transla tions. The s~atement ' 'SEIZE m"
is used to specify operations on the subset of n~tupl 0s f or technicians;
mis the index ih the set of then-tuple for a parti,ular technician.
The execution or tpis instruction correspoµcls to many translatio11s,
T[i,j,k,~U -
Part· of the substitution rule for one of the translations
corresp·onding to "SE:{:iE m'' is: If the state of the scalar xk
of_ c1,m is "not busy" change it to a busy state .
The substitution rule~ for the remaining major translations
c
'/
23
associated with thiq. instruction state the mauner jn wh i ch values
of scalars characterizing t~e uti lization and other statis t ics
o f the technologist ~~a~gep
The translations that . correspond to the fl ow of elements
operate on the scalars that characterize t he location of :the ..
elemen~s. The resulting location is the object system may dep~nd
on 'many other scal.ars ,
For examplt! , a sample for whicp an ele~trolyte test has· been
reques ted goes t o one ot' the spinners in the system. J;n the
Tran$l ation T[i, j ,k,SJ for ~his i d~notes the subse~ o f n-tuples
representing· sami:,les, j depotes "the sample invo.lved; and k denQtes
the scalar characterizing the loc~~ion o·f a smaple in the system .
The supsti tution rule if "if an electrolyte test is -reque sted (i . e . ,
if the· binar.y-value.d spec if ring .whether or not an elec trolyte test is
requested has ·a val,ue' of 1) change scal.ar xk to some value corres ponding
t .o location · of spinner .#:1. I f not .change xk t o some value· corresponding
to loc(!lt ipn of spi.nner 7'1' 2, " G.PSS has a routine to implement this
translation·. The :routine is c41le~ by the i"nstruction "TEST E P3~ KO ,SPINI"
whi~h is read, " tes~ if sca~ar #- :{ of the n-tupie for this tnstruction ·
i-s equal to a constant n~inber O; if not go to S:f>INI, otherwise, . .
exeo~te · next instru.c tion. '' Scalar #.3 of a sam~le will have been
equal to 1 if ·a·n electrolyte test: is reqt1ested and equal to O
otherwise.
c. Implementing Timing Routines
I f a mode l er uses FORTRAN or MAD h e rnu:-.t w1.· i tt' a I. I L imi.ng
routines himselJ; . If, however, he uses a simulatio1t language he
may not hav~ to write all the timi:ng routines . SIM~ CRIPT has an
"EVENTS" routine that implements the timing of translations.
24
GPSS \)as an "ovErall GPSS scan" routine that implement s the timing
of translat ions.
A summary of the algorithm that GPSS uses to control the timipg
of translations is as follows: Two chains are established in the
memory of t he computer, a curren t events chain and a future events
chain . The members of these chain's are the n-tuples that correspond
to the elements ·that control the timing and flow of the object
system. In the GPSS model of the clinical laborator} the majority
of the members of these chains correspond to the biological samples .
The members on t be current events chain are arranged in .descending
priori ty classes and, in the case of equal priorities, in the order
in which they were linked to this chain. Starting at the highest
priority cla ss, the overall GPSS scan moves (translates the scalars
characterizing ·t he location of elements in the system) the members
of the curr ent events chain through t he model (causes the execution
of translations ) until they are delayed or limited t0 the futur e
events chain . The simulation clock is then updated to the value at
which the f i rst element on the future events chain is due to leave
that chain . This e l ement i s then linked to the current events
chain . The scan again translates the n-tLtples on the c.urrent events
chain as far as they will go . This process is repeated until the
simulation is terminat~d.
(
25
VI. Other Exa,nples
a. Example ·o,- Differ ent Controlling El0mcnts
In many comp lex sys terns the timing o[ al l opt:>1·a t ions is
not necessarily control led by the same elemcn.t or the same typ,L' oi
element . It is important in t he simultation oC these systems to
recognize all controlling elements . As was previously stated, th~re
a r e ope.rations. i;:i the laboratory which would take pl.ice. even if no
samples arr ive, such as lunch and coffee breaks . Therefore,
samples do not d i -rectly control these· operations . I n the clinical . . .
laboratory, the l unch · break does not occur at exactly twelve
o'clock but: rathCTr some· time after twelve o'clock. The facto rs
that ."$overn the Lime of t he lunc.h break are the urgency of work
wait ing to be processed by the t echnologis t, or t he partial processing
of a task that tt,e technologist does not wish to intE n·upt for lunch.
I n the trar.slation T[i,j,k,S) _that. corre~ponds to the operation
of a lunch break i denotes the subset representing technicians, j denotes
the n-tupl~ the ~articular technic ian involved, and k denotes the
scalar characterizing the state "out to lunch - not out to l unch".
The substitution rule is simple " change the valu<> of scalar xk to
the value denoting "not out to lunch".
The problem is of hbw to control the timing of th is· translation .
The samples do not directly de t ermine the t ime of the lunch break
nor dots the technol~gist. Even if no samples were in the laboratory
th"' lunch brvok \vl1uld s t ill ~,ccur. To IH>~ tu l,1Ll' that it is tilt'
ltungL•1· of Lill' tt•cllnologists th;.tL control Lill' timing 111° Llil' l und1
break· , re<.:civcs the reply that 111a1iy technologists an• hun~ry ;:is snnn
26
as they arrive gt the laboratory. What then controls Che timing? A
signal from the control information system. This si.gnal is gener...1ted
a t twelve o'clock, and has a designated priority. I/hen nothing
else of higher priori.ty is left to be processed and the technician
is not engaged i n a tesk, the signal causes the lunch break.
The lunch break for our hungry technician may be simulated in
GPSS by the statements below. The control system's signal can be
thought of as flowing through these statements . Each statement
calls a routine that is an implemen·tation of the translations
associated with the operation of a lunch break .
Instruction
668 GENERATE
669 SEIZE
700 ADVANCE
701 RELEASE
Arguments
O , 0 , 72 00 , l , 6
1
300
l
Comments
Create an n-tuple that corresponds
to a signal with priority 6
generated at 12 noon .
Wh en nothing of higher priority
has seized technologist ~l,
translate the ~cala r characterizing
the state o[ tc•chnician.:;:.-1 to
a "busy state .
Advance after time for lunch .
300 units of time .
Hunger satisfied, let technologist
re turu to sys L:c111.
c
0
27
The timing of translations· is controlied by the' algorithm
previousiy mentioned in Section v .a. Applying t his algor-ithm
th~ foUowing wi.11 result. Statement · 668 causes th,:! n-tuple repre
sent in$ the signal f or a lune~ break to be linked t,> the future
events chain, a11d at simulation time 7200 then- tup l e i s linked
to the current events chain. The scalar characterizing then-
tupJe's · position on the current events chain will indicate .a
priority class 6 on that chain (the highest priority . of the system
is 7--few n- tuples have a higher priority than then-tuple representin~ . . .~·,,_.~
the controlling element· of lunch).
When the sil\lulation cloc;k is updated to 7200, the overall
scan will, starting at the highest p.riority class, give the ·value
of i and j in T[i,j,k ,S] (then-tuple on the current events chain
with highest priority) to t.he statement 689 SEIZE 1. The routine
SEIZE r implements many translations,. as ha.s been di~cussed · (Section
II . b) . The n ·sult of the execut ion of this staten:ent corresponds
· to the setting of the scalar ~· for the techn-ician to a "busy''.
state . If this scalar already has a value correspo~ding to "busy"
processing of this n -_tup~e is stopped . Otherwise the GPSS scan
· will then give tqe value of i and j of. the n-tuple characterizing
the signal to the nex~ statement J\DVANCE 300 . Execution of this
routine links the n-tuple;n,r t~e signal to the future events ch~in ·
to be removed after 300 units of simulation time . After 300 units
of simulation time the G'ffi.S sea~ links t&e n-tuple characterizing t~e
signal back to the current eve_nts chain. Instruct i on "RELEASE l ''
28
i s then executed resulting in setting t he sc;1lar x t o th<' v':ilue
denot i ng "not b•Jsy".
b . Aspect of SysterrGNot Directly Expr ess ible i n C.PSS
As is the limitation with any s imulat ion language , some important
a spects o f a sys tem are not directly exp1essible in the Language . The
c l a s s o f operations fo r manipulating sets i s not expressible using
GPSS. Among these are operations. that_ mani pulate collections of
elements (sets, queues, storages, files ) .
For example, consider a ttay brought t o a work bench after
the sample s have been centrifuged . The corre~ponc\ing translations
required are to operate on all n-tuples that are members of the
n-tuple representing the collection of samples. The timing of
'this operat ion is caused by the number of samples themselves .
If the tray i s f ull or if there are no more samp les left to process
the samples go to the bench.
In GPSS there is rio direct way of i mplementing the translat i ons
and timing associated with this operation . The fol l owing ins tructions
~ere used to effect this operation:
GPSS Instruction
Label Instruction Arguments
324 SEIZE 3
325 GATE SF 3 ,NOTEFL
326 ADVANCE LO
Corresponding operation in object system
Conunents
Seize technician who centri f uge s
Is tray f:./3 full? If not go to
NOTFL.
l f l r :1y i ~; l u l I , ht• i ng t t) hl'IH'li
(Lil i.s 01wr:.1tio11 l:nkt•s 10 uni L~ t l l
r :'" .... . I,... - .:
c
29
327 UNLINK 4,BENCH+l,ALL Cause all samples on tb~in 4
to go to .>ench .
329 BENCH RELEASE 3 Samples ll<•W at bench, re leas~
tct.:lmic iat who centrifuges .
357 N:OFUL TEST NE VS , KOBE NCI I - 1 Ate there any more
s.::tmpl('s i 11 system? If not
go to BENC. H-1.
358 RELEASE 3 If there are more samples
in system release t;echnician
who centrifuges.
358 LINK 4,FIFO Link to chain -I 4 and wait .
The instruc tion in GPSS to test whether a tray (i.e ., a
GPSS) is full is written "G.(-1.TE SF 3 ,NOTFUL . ,.. This instruction i s
read "If gate stor~ge q-3 is not full, go to NOTFL; otherwise
e:l:(ecute the next instruction."
The' ins truc.. t ion "UNLINK 4,BENCH,ALLir causes all the members of
chain -~:.4 to hav<: tihe scalars signifying their locat i on changed to
the value corresponding to the location BENCH.
The instruction "LINK ·4,FIFO" causes the n-tuple executing this
instruction to be linked to chain .::1 4 in the order of first in-f irst
out bases .
VS in the state~ents above is set equal to the number of n- tup l ~s
corresponding to samples tha·t have not caused the execution of the
30
routine above but are still in the niodel.
VII Validity )f a Simulation Model
When consi.:ructing a model the question of the validity of the
model must be dealt with. Can the ·modeler be absolu tely certain
that results derived from his model are applicable to 'the obJect
system?
·There is nQ known met:hod of. proving the validi t y of a mod el.
in general. However, two factors ought to be consid~red. First,
the link between the. object system anq the abstractions may be weak
because of exclu$ion in the abstractions of important elements or
characteri stics that influence t he behavior of the object system .
Failure to defin~ al l traqslations or define the controlling elements
and timing may introduce errors associated ·with this link . Second,
all n-tupies, scalars, and translations of the set S may not be 0
represented among- the set ·S • This difference will 1.ntroduce other m ·
errors .
The fact that the validity of a model cannot bE: shown in general
does not mean that confidence cannot be placed in a particular model.
To give confidence t -o tpe validity of a mode l comparisons between the
operation of the object system and the model under known conditions
may be made. An example of a set of comparisons to give confidence
in the model of the· laboratory is shown in Table l . The comparisons
matched the performance (coqtinqed on page 31)
(
c
JI
of the laboratory for a particular day with the pC'1 Lorm1.1ncl' of t he
model fo r that same day. A recor.d was kept of the arrival time and
tests requested of samples entering the laboratory that day . Every
half-hour a set of statistics of the actual laborat ,ry was obtained .
The numbers in che left column correspond to the po nts i n Figure 4 .
indicating fhe .tpproximate place ip the system that these statistics
were taken . Above each column the time at which thC' stat ist ic was
observed is given.
The model ~as given the (';ame inputs a s were recorded for a day
in the object system. At every half -hour of s i 111ulat i on t ime the
current stat us of the mpde 1 was printed . These stat i. s tics were · _compared
with statistics taken of the .actual laboratory at corresp·onding times .
The simulation results are listed unqer the actual laboratory observations
in Table 1. [Table 1 is only a partial list o f the points considered.]
For example, the number o f samples logged by the electrolyt e /
•' spinner at 10! 30 a . m. was 55 in the actual laboratory and 56. in the model.
The excellent cqrre lation between objec t system data and model -data ~ave ~fidence in the model . O I
VIII. Information System
A typical clinical laboLatory, with a given set of facilities,
invariab l y reaches a state beyond which the labo!atory becomes incapable
of servicing its demands or becomes incapable of supplying the quality
of work it is doing . New instruments, automation of instruments,
reorganization of the laboratory, automatic data handling equipment, are
al l possible methods of improving the laboratory. However, incompatabilities
and inconsistenctes with the idea of maintaintng testing standards
ar i se . The simulation model was used to test ca<:h o( these possible
methods of i!)1proveq1ent. We will only discuss in this work the practicability
I i.
! Com~ri~@n ·of~~~~ lab.ol;atoc~ ts and-.~~-1.~e .. ~~~~-m.ula.ited
• a.m. :-::-~-~-~~:---:--=--=-~P·~m~·~-,-~~---------~ TIM.£(bour s) 8 8.5 9 9.5 10 10.5 11 11 • .5 lZ lZ.5 1 1.5 . Z Z.5 3 ·3.5 4 4.5 5
* ! •••
3 1 Number of samples· a O 22 4:1 5.3 65 97 iZ.4 129 134 13:, 141' 142 .144 152 157 164 166 166
given ac·ce s sion
number by spinners s O 22 -40 53 65 97 126 131 134 1~7 141 i41 14Z 152.. 15-J )63 166 166
3 I Number 0£ samples o 11 11 fs 21 40 . .5~ 53 54 S4 54 ·54 54 54 54 54 54 54 54
1 ogged by nonelecto-
ji l yte s.pinner . 8
3
54 54 54 54 ·54 54 54 , 54 54 54 54 0 11 .17 19 zz 41 54
-...-o 11 ·z• ·3s ·76 ·11 80 -.s.s 87 88 90 98 103 110 11z· ·112. 44 55
I t
l ogged by .. electro-
· lyte spinner
;.-
.a O 11 · Z3 34 · 43 56 ·72 77 80 83 '87 87 88 98 105 109 112 l.lZ
5 ;r-1umberof .samplea O 4 . 2.9 43 52 65 85 106 117 ·,117 '121. 121' 132 144· 155 16$-166 l(R,
! spun and put in ! J Tea dy Ta<:k . s O 4 29 45 . .SZ 64 84 103 117 117 .lZI 121 131 142 155 163 163 166
TABLE 1
f tf': ··:, .• t-' ""• =- .... I, . P , .
• "· .• '# • • •
·-,!'""!"Z..!..cu ''~ . - ~~:.r:--=-~~~-':-~~---·r-~;::--~-~~~ ~---~--· ·-:-~--..·;:--- ·-r--.. ~ ...... --~.--#------- ---·-...... ~ ...... ,. ... ,:"-;--.~.-=-:---.:- .. ~-~-··-
54
!• i.,, N
·, T ,~ BL.2 1 c.ontinued
a. m. TIMZ' (hours) *8 8. 5 '-) 9. 5 10 1 o. 5 11 11.. 5 .. 1 ~ 12. 5 ~L~ I . 5
'1 9 I Number of samples a 0 0 0 4 8 15 20 25 34 40 45 52
r ead a t b:fcarbona·te
t es t s 0 0 0 3 7 14 21 25 33 3 1,) 47 54
*Time -(hot:.rs), topline, refers to the time the count of events was taken.
**See Figu.re 1 for nu:r.nber·s in this column.
***Items in this column a ·re description;S of the numb.e~ event**·
a r efers to the number of events observed at the time noted.
s r efers to tl;\e number of events determined by simulation.
p. rn. 2 2.5 3
60 65 73
62 67 74
3. 5 4
77 83
81 84
4. :>
86
87
\.,.; w
5
34
of introducint data processing equipment i nto the laborator y. If the
model were used to gain insight to only the introduction of data
processing equipment the level o f detail which we have simulated the
laboratory wou ld not be necessary (e . g, all the quc ·ues, equipment,
technicians astociated with a test bench could be 1eplaced by a delay
f unction by which the samples were detained) . llowever, we wis)1ed to use
the model to gain insight into other questions a:; well.
The equipm~nt would be introduced into the med_cal information
system. The present system is inadequate to meet f uture demands an.d
automat ic data processing seemed an idea worth investigating.
As can be s een from Figµre 4, the output information (data)
from all test a reas goes into the medical information sys tern . With
the proposed da ta proce ssing equipment the inforrnatiun will go to a
digitizer via a multiplexing unit and then into a computer.
Functions oi computer:: Some of the functions of the computer
are the. following: To collec t the information extracted from the
samples and standard s ; to calculate the results of tf'sts by executing
the appropriate program stored on a memory unit; to contintisouly
monitor all info1 mat ion received in order to detect when all tests
on a particular sample have been processed; to compile and print
patient and ward report~; to store result s on any available storage .
Provision must also be made to process a request for a partial
report of a pat i ent's tests befo·re all tests of tha t patient are
processed. The computer maly also be used to compute other information
such as s tatistica l analysis, 9r for execut ing resear ch programs.
(
35
IX Simulat i qn of Medical Information System
To simulate the medical informati9n. system tlle six steps,
1. definition of the set S , 2. defin-ition of trmslations, 0
3. timing, st.~ps 4, 5, 6 implement steps l, 2, 3, are employed.
The se t of n-~uples corresponding to all the elements of the
objects system (information handled,computer, peripheral equipment,
queues) must be defined .
The translations corresponding to the oper ations of the object ·
system (compiling r esults of tests, prin·t ward and patient reports and
all .the operations of the computer) must be defined.
The n-tup l ~s repres enting i nformation o·f the biological samples
are t he controll i ng elements.
The scalar;; of t he n- t uple represent·ing the information are
given values to Jenote the origin of their test area, which sample
the n-tuple repr~?sents , the number and kinds of other t ests that
were requested of the same sample, and othe.r charactPristics .
These n - tuples, transiations, and timing are implemented on a
digi t al computer in the same manner discussed for the materials
handling system.
36
In the clinical ch~mistry laboratory, 'the executive p,rogram must
perform the following tasks: Control the ftow of informat i on in and
out of tl;le computer; govern the f low of programs from storage to
compute r esults of test; allow for interruption of ~ctivities for
emergencies; provide flexibili ty in the reschedulipg of tasks;
schedule printing of patient and ward reports .
The assignment of priorities to the tasks of .th.~ computer
presents a critical problem. For example, if the computer is per-
forming one tas k of priority 2, then any other task of a higher
priority can interrupt the computer ~nd be processed. If too low
a pr'ior:ity, is given to the task of compiling and printing emer gency
report~, theµ too much time mi~ht elapse between the request for the
report and1
the prin~ing of the report. If information is ready to
ent:e:r the romptiter and low ptiority has been given t,o th i s transaction,
then the. i~formation may be lost before the executive program allows
I the comput
1
er to a.ccept it.
! A di :ita l simulation can be used to exp lore the assignment of
e ffective rioritles. '.l-'his a ssignment was implemented i nto our model
by assign· · g an appropriate value to t lie pr.iority scalar ·of the n-tuples I
characterifii-ng the information of ~he biological SG\mples. The ;
information n - tuple of the biolbgical sample originates at a test
bench whic~ has just pro~essed the biologi cal sample4 It is at this
I point in tie model that a p~iority wil l be assigned t~ the information
n-tuple. 'Uie information from different tes t benches were given
different prioritif?S, Other tasks of the computer such as a doctor's
I • reques t for a partial pat:ient report were implemented into the mode l bv
generating an- tuple corresponding to the doctor's re~uest .
, .
(
(
(
37
In the f irst se t of assignments tried, the · tas l< of prii1ting a
patient report was g·iven highest priority; thereby these results would
be obtained immediately after compilation of al l tes t s for that patient .
This assignment 1.,as found unsatisfactory in that inp11t results from
individual test Hreas were being delayed too long befo re being accepted
by the computer. The outcome was an overflow of the input buffer
when other information from test areas was 1·eceived. This loss of
informat ion is intolerable in a hospttal.
Assignments that were . marginal were found . ·That i s, they wou ld
work for the present system but did not allow for an increase of wor k.
These were found by noting the frequency with which the s imulated computer
was preempted.
After explor i µg 0ther assignments, the following assignment proved
to be satisfactory and allowed for future increas~ of Che laboratory's
work load. Highe:.;t priority was given to information in the i nput
buffer whenever more information was ready to enter the buffer.
Descending priorities wer~ then assigned to the fol l ciwing: A request
f or a partial patiet;1t ' report, computation of r esults of a -test., compiling
and printing of patient reports, and storage of these resul~s on any
avapable storage, accepting daca· from t-he buffe r of t he multiplex
unit, compiling and print~ng ward reports.
The tasks of billing apd other low priority work were not cons idered
in the model . However, satisfactory times. of day for scheduling these
tasks were found using the model. Low utilization t imes m9.y be seen
from Figure 5 ;these are opportuqe time~ for schedul~ng ot~er work.
Figure 5 shows. computer utilizat-ion Ci.YI:' each llnu i: vcrsw; timt:' n L clziy
as given by the simulation .
.38
tor 50
f :,e • 40 -z 0
t 30 N
I ..J I-:::> 20
10
6 9 10 11 12 I 2 3 4
AM TIME OF DAY PM
Figur e 5 Utilization oi computer tirne vc1·$us time of da y
. . 39
Note further the util i zation never goes aboye 50 per cent. This
demonstrates the system's ab~lity to hanqle an expansion 'of the l ab-
oratory's wor:k l9ad if a suitable execut i ve system is used, e ven
though the computer siwulated js considered to be i small computer •.
of Results from the Model: . . . . Summary , \ The s1mulat10~ moael nas given insight into the answers
to the problems of introducing d,ta processing egui~ment into the
laboratory. It nas uxi.cqvered problems that were not orig:i.n.ally
thought of. It has shoy7n th-at a small. compµter (IBM. 1130) with one
disk file and a. DY;11tec data~logg~r ·are adequate . It has shown the
requiremertts of the ex~cut iv'e progratn f or t he l.aboratory .
The model has shqwn that t l:].e "t ime slicing mode," mentioned earlie.r
resulteq in the shortest ex·ternal queues qf ta_sks to be· performed by
the computer:. Thus t~chnician waiting time _, for the computer, was
( br_ought to es_sentially zero. The model showed that the average per
hour utilization of the computer could be made less than fifty percent,
thereby giying us further confidence in making the. decision .of using·
"time slicing modeir .for this mode de.es use more computer t ime t9
maintain interna l queues of ta.sk request or da t a .
In the future, the simulation model wil 1 be used _f urther t o s tudy
· the efficacy of modifications to the lab~ratory.
I
REFERENCES
1. Oettinger, A., "The Uses of Computer:s in Science," Scientific American,
Vol. 215, p. 160; September 1966.
2. Donovan, J. J., "Investigations in Simulation and Simulation Languages,"
Ph.D. dissertation, Yale University, New Haven, Connecticut, 1966.
3 . Gordon, G., "A general purpose systems simulation ·program," AFIPS, vol. 20,
pp. 87-104; 1961 .
4. Markowitz, H. M., Hausner, B., and Karr, H. W., "SIMSCRIPT, 11 Prentice
Hall, Inc., Englewood Cliffs, N. J.; 1963 •
. 5. Donovan, John J., "GP_S~ under Yale DCS-IBSYS," Memorandum No . 70, Yale
Computation Center, September, 1965.
. ~