Você está na página 1de 48

| 



 | |

Ô  

   
   
± Design a model for a real or proposed system
± Execute the model on a computer
± Analyze the execution output

Π   
 
± Evaluate the behavior of the system under
different sets of conditions by using the models
to carry out groups of experiments
  
  
 
± Cost reduction and time saving: draw inference
about new systems without actually building
them and evaluate changes in existing systems
without actually disturbing them.
± The only tool that will allow system
interactions to be analyzed for complex
systems.
± Permits managers to visualize the operation of a
new or existing system under a variety of
conditions.
O      
± Digital simulation modeling using
SIMAN/ARENA
± System Applications of digital simulation
± Performance analysis of manufacturing and
service systems and processes
  
A collection of elements that cooperate to
accomplish some stated objectives.

± Examples:
r ‰ank tellers + customer queues
r Supermarket cashiers + customer queues

r Hospital emergency room + patients

r Machines + parts

r Cities + Highways

r Telephones + connection networks

r Materials + handling equipment


  
A collection of symbols and ideas that
approximately represent the functional
relationship of the elements in a system.

Examples:
r áueuing models: queues, servers, interarrival times,
service times, distributions,...
r Network models: nodes, links, traveling times,
capacities,...
Types of Simulation
r à    
: State of system changes only at
³discrete event´ times. |   Customers arrive at a
bank branch; parts moving in a production systems; trucks
travel on a highway network; «
r `
 
   
State of system represented by
algebraic or differential equations with variables that
change continuously over time. |   Nuclear
reactions; chemical processes; ocean waves, etc.
r     
The system has discrete elements as
well as continue elements. |   Metal moulding and
casting, ecosystems, etc.
r à     
The system status changes over time.
r Y
     
Models operate with random inputs.
       
± Provide estimates of the statistics of system
performance
± Evaluate the effects of system condition
changes

       


± It cannot optimize the system¶s performance; it
can only describe the system behavior under the
given conditions
± It cannot provide accurate simulation results if
the data and the model are not accurate
 


± Start with simple models and evolve to
complex ones
± Focus on important issues and screen out
unimportant issues
Π       Π 
6Simulation project team
6System design team
6Data/information sources
6Implementation team
6Contractors
6Decision maker/management

     


6Project manager
6Representatives from each major groups
6Project milestones and checkpoints

    
  
± Identify Problem
± State Objectives
± Collect/Prepare Data
± Formulate Model
± Verify/Validate Model
± Modify/Refine Model (Repeat the previous two
steps if necessary)
± Simulation Experiment Design
± Simulation Execution
± Output Analysis and Interpretation of Results
± Conclusions and Implementation
  Œ  

&#
' ##(

 #$
*   )
 !" %"&#!"
##'%%( ! ##

+ ÷   
h |",##-$##$
h .,#/##0/###&0$$1,#
,&#"2"3
+ a 

h "#11##"11##$#"4,"##
h ##1&# &#"5&#"$#13$"
h ##º  1#"0$"
h ##"2#'#$#011#(
  
r Initially (time 0) empty and idle
r ‰ase time units: minutes
r Input data (assume given for now «), in minutes:
Part Number Arrival Time Interarrival Time Service Time
1 0.00 1.73 2.90
2 1.73 1.35 1.76
3 3.08 0.71 3.39
4 3.79 0.62 4.52
5 4.41 14.28 4.46
6 18.69 0.70 4.36
7 19.39 15.52 2.07
8 34.91 3.15 3.36
9 38.06 1.76 2.37
10 39.82 1.00 5.38
11 40.82 . .
. . . .
. . . .
r Stop when 20 minutes of (simulated) time have passed
OΠ      

r a
  

of parts over the run (Œ)
r       of parts in queue:
2
2 ù     


   ù 

 
 j    ù
2 2  

r      of parts in queue:

¢  
 ´j 
OΠ      

r a    


  :
„ tù
   

* t  dt  t
„  t 
r 
  
  : it i„
r    and  
    of parts
(a.k.a.  ):


   ù     
  
   
O

     


r u   
of the machine (proportion of time
busy)
„
* Bt  dt  Bt 

     
 t
„ U
     !  t

r Many others possible (information overload?)


,23:
#$
3"#,   ‰'( '(
,#"1 |##
    ""6/##
    

,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
   

 )
 7
'($& 
 j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @86880A#
3"#,   ‰'( '(
,#"1 |##
    ""6/## =j0 86880
>
 8688 8 8 ;#,$3< =?0 86880 |>

,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
8 8688 8688 8688

 )
 7
'($& 
 j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @86880
1!j
3"#,   ‰'( '(
,#"1 |##
    ""6/## =0 j6*70
>
j  8688 j 8 ;#,$3< =j0 680 #$>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
j 8688 8688 8688

 )
 7
'($& 
 j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @j6*70
1!
3"#,   ‰'( '(
,#"1 |##
    ""6/## =j0 680 #$>
 j  j6*7 j j 'j6*7( =70 76890
>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
j 8688 8688 j6*7

 )
 7
'($& 
 j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @680#$#1!j
3"#,   ‰'( '(
,#"1 |##
    ""6/## =70 76890
>
  68 j 8 ;#,$3< =0 )60 #$>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
 j6j* j6j* 68

 )
 7
'($& 
 j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @76890
1!7
3"#,   ‰'( '(
,#"1 |##
    ""6/## =)0 76*0
>
7   7689 j j '7689( =0 )60 #$>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
 j6j* j6j* 7689

 )
 7
'($& 
 j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


Y     :
 @60   1! 
Y "     ‰'(
'(   " 1   
     ""6   = 0 6 j0 >
    6  j  ' 6 0 6 ( = 0 6 0 >
= 0 6 0 >
 1   1      
        "  
'( ‰'(
 "     
 j6j j6  6

 
 

'(   
 j
 
    j j 
 
‰'(   j

   j j 

 '   "(
     " j60j60 6j0 6 0j6 0 60j606j0j60j60666
Y    " 60j60606060606060606
0666


,23:
 @)6)j0
1!
3"#,   ‰'( '(
,#"1 |##
    ""6/## =0 )60 #$>
 ) 7   )6)j j 7 ')6)j076*07689( =0 j960
>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
 j6j* 76j )6)j

 
)
 
7
'($& 
 
j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @)60#$#1!
3"#,   ‰'( '(
,#"1 |##
    ""6/## =70 9680 #$>
 ) 7  )6 j  ')6)j076*( =0 j960
>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
7 6* 769* )6

 
)
 
7
'($& 

 
j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @9680#$#1!7
3"#,   ‰'( '(
,#"1 |##
    ""6/## =)0 j6*0 #$>
 )  968 j j ')6)j( =0 j960
>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
) *68j j86 968

 
)
 
7
'($& 

 
j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


,23:
 @j6*0#$#1!)
3"#,   ‰'( '(
,#"1 |##
    ""6/## =0 j*6870 #$>
  j6* j 8 '( =0 j960
>
=?0 86880 |>
,2#1 1
##
##
,$##5 5,#"/## '( ‰'(
,#"/##   
 j6j* j6j* j6*

 
)
 
7
'($& 

 
j
 8
  8  j8 j 8
 
‰'($& j
8
 8  j8 j 8

,#' #"(
#,#" j6*70j67086*j0860j)69086*80j6076j0j6*0j6880666
##,#" 680j6*07670)60)6)0)67068*0767067*06790666


Y    :
 @j60    1!
Y "     ‰'(
'(   " 1   
     ""6   =0 j
60 >
 j6   '( = 0 60 >

  1  1        
        "  
'( ‰'(
 "     
 j6j j6j j6

 
 

'( 
 j
 
    j j 
 
‰'( j

   j j 

 '   "(
    " j60j606j060j6
060j606j0j60j60666
Y    " 60j60606060606060606
0666


Y    :
 @j
60   1!
Y "     ‰'(
'(   " 1  
     ""6   =0 j60 >
  j
6 j  '( = 0 60 >
=0 60 >
  1  1        
        "  
'( ‰'(
 "     
 j6j j6j j6

 

 


'( 
 
j
 
    j j 
 
‰'( j

   j j 

 '   "(
    " j60j606j060j6
060j606j0j60j60666
Y    " 60j60606060606060606
0666


Y    :
 @j60   1!
Y "     ‰'(
'(   " 1  
     ""6   = 0 60 >
   j6 j j 'j6( =0 60 >
=
0 6j0 >
  1  1        
        "  
'( ‰'(
 "     
 j6j j6j j6

 
 

'( 
 j
 
    j j 
 
‰'( j

   j j 

 '   "(
    " j60j606j060j6
060j606j0j60j60666 
Y    " 60j60606060606060606
0666 


Y    :
 @60   
Y "     ‰'(
'(   " 1  
     ""6   =0 60 >
   6 j j 'j6( =
0 6j0 >

  1  1        
        "  
'( ‰'(
 "     
 j6j j6
 j
6

 
 

'( 
 j
 
    j j 
 
‰'( j

   j j 

 '   "(
    " j60j606j060j6
060j606j0j60j60666 
Y    " 60j60606060606060606
0666 


Y
 "!
# $
r Average waiting time in queue:
 1  "  j j
´ ´     "  
6 1  "  
r Time-average number in queue:
    
   j 

´ ´  
    

r Utilization of drill press:


    ‰   j

´ ´  ' "  ""(
    
` % &

r Usually, simulation is used for more than just a single


model ³configuration´
r Often want to compare alternatives, select or search for the
best (via some criterion)
r Simple processing system: What would happen if the
arrival rate were to double?
± Cut interarrival times in half
± Rerun the model for double-time arrivals
± Make five replications
D
 O& '
 (a %&

r Original ± circles
r Double-time ± triangles
r Replication 1 ± filled in
r Replications 2-5 ± hollow
r Note variability
r Danger of making decisions
based on one (first) replication
r Hard to see if there are really
differences
r Need: Statistical analysis of
simulation output data
Y %)Y $*%a O)*%)÷$%÷+
A complete SIMAN model consists of a MODEL frame
and an EXPERIMENT frame.
± a    Describes the logical flow of
events within the system. The program should have the
extension MOD (i.e., filename.MOD). Statements in
the MODEL file are called ‰LOCKS.
± a     Specifies the experimental
conditions for executing the model. The program
should have the extension EXP (i.e., filename.EXP).
Statements in the EXPERIMENT file are called
ELEMENTS.
Y %)D$)a +DO`+'$D+
TEXT TEXT
NAME.MOD NAME.EXP

MODEL EXPMT

NAME.M NAME.E

LINKER

NAME.P

SIMAN

NAME.OUT
‰%Y `Y %) O'+* )÷

± aa: Items that flow through a system, such as


customers, parts, trucks, etc.
± : Waiting areas where the movement of entities is
temporarily suspended.
± O: System components that may be allocated
to entities, such as machines, workers, bank tellers, etc.
± aaa: Represent values associated with
individual entities, such as job type, arrival times, etc.
± ÔOÔ Ô: Represent values that describe
the state of the system, such as number of job in the system,
number of machines available, shift number, etc.
+  a      
A single-Machine job shop processes two distinct
products (or part types). Type 1 parts arrive every 10
minutes and require 4 minutes to process on the machine.
Type 2 parts begin to arrive at time 5 and continue arriving
every 6 minutes thereafter. Each type 2 part requires 3
minutes to process.
Determine the number of parts of each type that are
processed in one 8-hour shift.

Type 1 arrivals
Out

Type 2 arrivals ‰uffer Machine


|  B
|C
r Individual parts are entities
r JobType and ProcessTime are attributes
r ‰uffer is a queue
r Machine is a resource
r Time units are in minutes
% . 
± CREATE arriving jobs
± ASSIGN values to ProcessTime and JobType
± áUEUE the jobs for the machine in the ‰uffer
± SEIZE the machine
± DELAY by ProcessTime
± RELEASE the machine
± COUNT the JobType completed
± DISPOSE of the finished jobs
||D!|B | % |: 6|D!
‰EGIN;
;Single machine job shop

PROJECT, Single Machine, CIS 441;


ATTRI‰UTES: 1, JobType:
2, ProcessTime;
RESOURCES: 1, Machine, capacity(1);
áUEUES: 1, ‰uffer;
COUNTERS: 1, Type 1 Job Count:
2, Type 2 Job Count;
REPLICATE, 1, 0, 480;

END;
a OÔÔO

‰EGIN;
;Single machine job shop
;Attributes: JobType, ProcessTime
;Resource: Machine
;áueue: ‰uffer

CREATE: 10; Create type 1 jobs


ASSIGN: JobType=1:
ProcessTime=4:
NEXT(process);

CREATE, 1, 5: 6; Create type 2 jobs


ASSIGN: JobType=2:
ProcessTime=3;

process áUEUE, ‰uffer;


SEIZE, 1: machine, 1;
DELAY: ProcessTime;
RELEASE: machine;

COUNT: JobType;
DISPOSE;

END;
a"+Y $*%a O)D+Y$*aYY O$a

Project: Single Machine


Analyst: CIS 441
Simulation run ended at time: 480.0

COUNTERS
Identifier Count Limit
Type 1 Job Count 48 Infinite
Type 2 Job Count 79 Infinite
+  „ ! !Y  

Modify the single machine model such that the time


between arrivals is exponentially distributed with
means of 10 minutes and 6 minutes for job types 1
and 2 respectively. The processing times are
uniformly distributed between 2 and 6 minutes for
part type 1 and between 1.5 and 4.5 minutes for part
type 2.

Collect statistics on the machine utilization, number


of jobs waiting, job flowtime, and time between
exits.
a !ŒaÔ!Œ
‰EGIN;
;Modified single machine job shop
PROJECT, Single Machine, CIS 441;

ATTRI‰UTES: JobType: ProcessTime: ArrTime;


RESOURCES: Machine;
áUEUES: ‰uffer;
COUNTERS: Type 1 Job Count:
Type 2 Job Count;

TALLIES: Flowtime:
ExitPeriod;

DSTATS: Ná(‰uffer), áueue Length:


NR(Machine), Machine Utilization;
REPLICATE, 1, 0, 480;

END;
a  OÔ Ô  O
?
‰EG N;?
;Modi i d?singl ?m hin ?job?shop?
??
? ? CREATE:?EXPO 10 :?MARK A Tim ;? ?
? ? ASS GN:?? JobTyp =1:?
? ? ???????? ? P o ssTim =UN F 2 6 :?
? ? ? ? NEXT p o ss ;?? ?
? ? CREATE ?1 ?5:??EXPO 6 :??? ? ? ? ????????????
? ? ? ? ? MARK A Tim ;?? ? ?
? ? ASS GN:?? JobTyp =2:?
? ? ? ? P o ssTim =UN F 1 5 ?4 5 ;?
p o ss? á E E ?? ‰u ;?
? ? SE ZE:??? m hin ;?
? ? DELAY:? P o ssTim ;?
? ? RELEASE:? m hin ;?
?
? ? TALLY:? 1 ?NTERVAL A Tim ;?
? ? TALLY:? 2 ?‰ETWEEN;?
?
? ? CO NT:? JobTyp ;?
? ? DSPOSE;?
?
END;?
a ԏaOÔaOa
Project: Single Machine
Analyst: CIS 441
Simulation run ended at time: 480.0

TALLY VARIA‰LES

Identifier Average Variation Minimum Maximum Observations


Flowtime 7.6548 .56697 1.5940 18.866 116
ExitPeriod 4.1138 .61447 1.5089 18.022 115

DISCRETE CHANGE VARIA‰LES

Identifier Average Variation Minimum Maximum Final Value


áueue Length 1.0583 1.1847 .00000 5.0000 1.0000
Machine Utilization .80701 .48902 .00000 1.0000 1.0000

COUNTERS

Identifier Count Limit


Type 1 Job Count 43 Infinite
Type 2 Job Count 73 Infinite
"
1. Reading Chapters 1 and 2
2. 2-4
3. 2-5
4. Consider a manufacturing system comprising two different machines and a single operator who is
shared between the two machines. Parts arrive with an exponentially distributed interarrival time
with a mean of 3 minutes. The arriving parts are one of two types. Sixty percent of the arriving
parts are type 1and are processed on machine 1. These parts require the operator for a one-minute
setup operation. The remaining 40 percent are part type 2 and are processed on machine 2. These
parts require the operator for a 1.5-minute setup operation. The service times (excluding the setup
time) are normally distributed with a mean of 4.5 minutes and a standard deviation of 1 minute for
type 1 parts and a mean of 7.5 minutes and a standard deviation of 1.5 minutes for type 2 parts.
Two different priority schemes have been proposed for allocating the operator between the two
types of waiting jobs. The first scheme is to assign priority to the type 1 jobs. Under this proposal, a
job type 2 setup will only be performed if there is no type 1 setups waiting to be performed. The
second proposed scheme is to alternate the priority between the two job types.
Simulate each of these systems, using SIMAN language, for a 80-hour period; and collect statistics
on the machine and operator utilization, the average number of parts waiting for each machine, and
the average flow time for all parts.

Você também pode gostar