Promodel Manual

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 14

KING FAHD UNIVERSITY OF PETROLEUM & MINERALS

COLLEGE OF COMPUTER SCIENCES & ENGINEERING

Department of Systems Engineering

SE 405
STOCHASTIC SYSTEM SIMULATION
LAB MANUAL

Prepared by
Dr. Abdul Basith Andijani
Mr. Shaikh Arifusalam
Mr. Hasan Seliaman

TABLE OF CONTENTS

INTRODUCTION AND MANUAL SIMULATION............................................................................3


SIMULATION USING FORTRAN.......................................................................................................4
INTRODUCTION TO AWESIM...........................................................................................................5
CONDITIONAL AND PROBABLISTIC BRANCHING....................................................................6
BALKING AND BLOCKING................................................................................................................7
INTRODUCTION TO RESOURCES...................................................................................................8
MORE ABOUT RESOURCES...............................................................................................................9
INTRODUCING GATES IN AWESIM...............................................................................................10
INTRODUCTION TO PROMODEL...................................................................................................11
BRANCHING/ROUTING IN PROMODEL......................................................................................12
ATRIBUTES IN PROMODEL.............................................................................................................13
RESOURCES IN PROMODEL...........................................................................................................14

Systems Engineering Department


SE 405
Lab # 1
INTRODUCTION AND MANUAL SIMULATION
Objective 1: Introduction to Simulation.
A comprehensive introduction to the problem of simulation is given in this lab. The
students are introduced to the area by giving several examples from daily life. The
different nature of simulation based programming is emphasized. The concepts of
timing and event list are illustrated through the use of relevant examples.
Introduction to the following concepts:
1.
2.
3.
4.
5.
6.
7.
8.

Need of simulation in real world problems.


Objectives attainable by simulation.
Use of simulation as a tool for solving complex problems in real life.
Different ways of simulation of problems.
Use of programming languages in simulation.
Different commercial packages like Awesim and ProModel.
Reliability of the results.
Single server queuing problem and its variations.

Objective 2: Understanding Manual Simulation.


To enable the students to perform manual simulation. This lab will guide the students
in understanding the basic operations behind a simulation problem in a step-by-step
process.
Things to do:
To conduct manual simulation the following is needed.
1.
2.
3.
4.
5.
6.

Define objectives of the single-server queue simulation problem.


Initialization of the problem.
Define Events and Event List.
Understand How to update state variables every time an event happens.
Understand the collection of statistics.
Stopping rule.

Assignment
The students are requested to perform manual simulation as given in the example
from the textbook for the single server queuing model. Tables are provided for
recording the stepwise change in the state variables and different parameters.

Systems Engineering Department


SE 405
Lab # 2
SIMULATION USING FORTRAN
Objective:
To enable the students to perform simulation using FORTRAN. This lab exercise will
guide the students in understanding the basic simulation program in a high level
programming language. The logic and the flow of the program is implemented in
FORTRAN simply because most of the students are familiar with it. The exercise of
writing subroutines gives hands-on experience for a practical simulation problem.
Things to do:
FORTRAN compilation requires following steps.
9. Understanding the flow of the program
10. Subroutines required are
a)
b)
c)
d)
e)
f)
g)
h)

INIT
TIMING
ARRIVE
DEPART
REPORT
UPTAVG
EXPON(RMEAN)
RAND(I)

11. Main program structure


12. Inputs required to run the program
13. Specification of the desired output statistics
14. Description of the stopping criteria
15. Report generation and interpretation.
Things to do:
Rerun the program with different input values and evaluate the results obtained.
Assignment
1. Rerun the program for different input values.
2. Edit the Fortran Program to change the stopping criteria and run for different
Input values.

Systems Engineering Department


SE 405
Lab # 3
INTRODUCTION TO AWESIM
Objective:
The students are introduced to the simulation package AWESIM. The concept of
single server queuing model is discussed and a model is developed in AWESIM.
AWESIM description of the following nodes:
1. CREATE
2. ACTIVITY
3. QUEUE
4. TERMINATE
AWESIM description of the following CONTROL statement.
INITIALIZE
The above statement is added in the list of statements in Control file to stop
simulation based on the simulation time.
Assignment:
The students are asked to rework on the single server model developed in AWESIM
by changing the interarrival times (distributions), terminating criteria, service times,
etc.

Systems Engineering Department


SE 405
Lab # 4
CONDITIONAL AND PROBABLISTIC BRANCHING
Objective:
AWESIM description of the following nodes:
1. ASSIGN
2. GOON
3. COLCT

Routing Entities: Probabilistic and deterministic.


Probability Specification
The sum of the probabilities must be equal to 1.
Conditional Specification:
Relational Code

Definition

<

Less than

<=

Less than or equal

==

Equal

>

Greater than

>=

Greater than or equal

Solving Illustrations 4-1, 4-2 and 4-4 from the Hand out.
Assignment:
Solve problem # 4-3 from the Hand out.

Systems Engineering Department


SE 405
Lab # 5
BALKING AND BLOCKING

Objective:
AWESIM description of the following nodes:
Concepts of Attributes
ATRIB[I]

XX[I]

LTRIB[I]

LL[I]

STRIB[I]

SZ[I]

Queue Balking
Queue Blocking
Slam Variables
Number in queue NNQ
Solving Example 4-2 (illustrating probabilistic routing) and Example 4-1 (illustrating
balking and blocking of queues.
Assignment:
Solve problem # 4-8 from the Hand out.

Systems Engineering Department


SE 405
Lab # 6
INTRODUCTION TO RESOURCES
Objective:
AWESIM description of the following nodes:
1. RESOURCE Block
2. AWAIT Node
3. FREE Node
4. PRIORITY Statement
Solving the following illustrations.
Illustration 5-1 (Resource usage for sequential operations)
Illustration 5-2 (Single resource processing different entity types).
Assignment:
Solve problem # 5-2 from the Hand out.

Systems Engineering Department


SE 405
Lab # 7
MORE ABOUT RESOURCES
Objective:
Revising the AWESIM description of the following nodes:
1. RESOURCE Block
2. AWAIT Node
3. FREE Node
Describing the following:
1. ALTER NODE
2. EQUIVALENCE Statement
3. INTLC Statement
4. MONITOR Statement
Solving Example 5-1 (Inventory System with lost sales and backorders)

Assignment:
Redo Example 5-4 (PORT OPERATIONS) from the Hand out.

Systems Engineering Department


SE 405
Lab # 8
INTRODUCING GATES IN AWESIM
Objective:
AWESIM description of the following nodes:
4. GATE Block
5. OPEN Node
6. CLOSE Node
Solving illustration 5-5 (Gates to model Shifts) and Example 5-5 (Single Lane Traffic
Analysis).
Assignment:
Solve problem # 5-1 from the Hand out.

10

Systems Engineering Department


SE 405
Lab # 9
INTRODUCTION TO PROMODEL
Objective:
Introduction to PROMODEL software and its modeling environment
Explaining to students the following elements of Promodel.
1. LOCATION
2. ENTITIES
3. ARRIVALS
4. PROCESSING
Illustrate the concept of single server model, parallel servers, stopping criteria, etc.,
Assignment:
Solve illustration # 4-1 (page 85) and illustration # 4-2 (page 86) from the Hand out.

11

Systems Engineering Department


SE 405
Lab # 10
BRANCHING/ROUTING IN PROMODEL
Objective:
Continuing the basic PROMODEL elements.
1. LOCATION
2. ENTITIES
3. ARRIVALS
4. PROCESSING
Introducing the concept of conditional branching (probability), balking, etc., in
PROMODEL.
Illustrate various examples.
Assignment:
A maintenance facility performs two operations. These operations must be performed
in series: operation 2 follows always operation 1. There is space for 5 units (jobs)
between the two workstations, however the space for the workstation 1 is unlimited.
The distribution of the interarrival times of the jobs is exponential with mean of 5
minutes. The time to process a job in workstation 1 in minutes is normally distributed
with a mean of 8 and a standard deviation of 0.5. The time to process a job on
workstation 2 in minutes is normally disrtibuted with a mean of 10 and standard
deviation of 0.75.
a) Simulate the maintenance facility for 5 hours.
b) Report on the time to process a job through the two workstations and the
workstation utilization.
c) Assume that there is space only for 5 units before workstation 1 and if an
arriving job does not find space it will be subcontracted. Simulate this
situation to obtain the time between subcontracting units.

12

Systems Engineering Department


SE 405
Lab # 11
ATRIBUTES IN PROMODEL
Objective:
Introducing to more PROMODEL elements. The following will be discussed in the
class.
1. VARIABLES (GLOBAL).
2. WAIT UNTIL STATEMENT.
Illustrating Example 5-1 (Inventory system with lost sales and backorders) from the
handout for AWESIM, page 143.
Assignment:
Redo Example 5-1 (Inventory system with lost sales and backorders) from the
handout for AWESIM, page 143.

13

Systems Engineering Department


SE 405
Lab # 12
RESOURCES IN PROMODEL
Objective:
Introduction to concepts of resources in PROMODEL.
Explaining to students the static and dynamic methods of using resources in
Promodel.
The following elements required in dynamic method will be discussed.
1. Path Networks
2. Nodes
3. Interfaces
4. Specifications
Illustrations 5-1 (Inspector problem) and illustration 5-2 ( Professor problem) will be
solved in the lab.

Assignment:
Solve question # 5-2 (page 181) from the Hand out.

14

You might also like