Dr. Daniel Xing

Email: X.xing3@liverpool.ac.uk

Operations Modelling and Simulation

Lecture 2

EBUS-504

Operations Modelling and Simulation

Lab1

University of Liverpool

Management School, UK

TA: Mr. Lais Wehbi

Email: L.wehbi@liverpool.ac.uk

Continue your project development

Now, Company ABC puts all the three side panels (I-type, II-type, III-type) under

production. Each panel is firstly heated with combining different raw materials with a

mould in an oven and then after all the panels are cooled down and split, the mould will

be returned for cleaning and the panels need to go through different further production

steps with respect to their types. The production details for each panel are as follows:

Type I-type II-type III-type

Raw materials P1-P3-P2 P2-P3-P2 P1-P4

Oven 3 mins setup + 15 mins production 5 mins setup

+ 20 mins production

3 mins setup + 25 mins production

Conveyor needed? No Yes (Oven to Cooling) Yes (Oven to Cooling)

Cooling 20 mins 30 mins 30 mins

Split (1 mins setup after 10

operations)

2 mins (auto) 2 mins (auto) 2 mins (auto)

Mould cleaning 5 mins (auto) 7 mins (auto) 6 mins (auto)

After split Trim (10 mins manual) – Paint (15

mins manual) – Package (3 mins auto

and batch size is 3-5. Can be packed

with II-type)

Trim (10 mins manual) – Polish (5 mins

auto) – Paint (10 mins manual) –

Package (3 mins auto and batch size is

3-5. Can be packed with I-type)

Trim (15 mins manual) –Paint (8 mins

manual) – Polish (3 mins auto) – Wax

(2 mins auto) – Package (1 mins auto

and lot size is 2. Cannot be packed

with other types)

Continue your project development

The shopfloor currently has 3 ovens, 5 employees, 10 moulds, 2 conveyor (20 part

length and it takes 4 mins to move a panel from one side to another), 3 split stations, 2

mould cleaning stations, 2 trim stations, 1 paint station, 1 polish, 1 wax and 2 package

stations.

Procurement details for raw materials are:

P1: first arrival is 0, inter arrival is 20 mins, lot size is 2

P2: first arrival is 0, inter arrival is 15 mins, lot size is 4

P3: first arrival is 0, inter arrival is 15 mins, lot size is 2

P4: first arrival is 5, inter arrival is 25 mins, lot size is 5

Dr. Daniel Xing

Email: X.xing3@liverpool.ac.uk

Operations Modelling and Simulation

Lecture 2

EBUS-504

Operations Modelling and Simulation

Lab2

University of Liverpool

Management School, UK

TA: Mr. Lais Wehbi

Email: L.wehbi@liverpool.ac.uk

Continue your project development

1. Identify the warm-up period based on the current setting.

2. Now since a disruption occurred in ABC’s upstream suppliers, the arrival of P1 and

P3 are not as reliable as before and their inter-arrival times are following, N~(24,4)

and N~(18,3), two normal distributions, respectively. Please choose the proper time

window and use Welch’s moving average method to determine the new warm-up

period. Also, if the use of oven costs us £10 per minute, then how much is the total

cost after 1000 minutes?

Dr. Daniel Xing (x.xing3@liverpool.ac.uk)

EBUS-504

Operations Modelling and Simulation

Build your first SD model

University of Liverpool

Management School,

UK

mailto:c.iris@liverpool.ac.uk

Agenda

Model description (Vensim ®)

•Causal Loop Diagram

•First model – Getting involved with Vensim

•Model formulations

•

Results

analysis / Graphs

•Causal loop diagram-based Model improvements

•Building up the new model

•Results and analysis, comparing previous results

•Customise graphs

•Generate equation information from the Vensim model

Description of system

The company produce and sales prefabricated windows frames. In general,

the main behaviors that describes are the followings

•The production level is characterised by a RAMP function

•Company realized that sales, production, workforce and inventory are relevant.

The dynamics of the system can be defined by the following characteristics

•Items produced go into inventory (Without production, inventory will never go up. )

•Items are sold from the inventory (Without any inventory, there is no possible sales)

•Without any workforce, there is no production.

•If sales goes up the company tries to expand production (Sales impact target

production)

•Target production impacts target workforce level.

• Productivity impacts production and target workforce level.

• Considering target workforce level and work level, company can decide net hire

rate.

• There is a time to adjust workforce. You cannot get new workforce immediately.

Causal loop diagram

From the system description, the preliminary causal loop diagram can be

drawn as follows

Vensim model of the system

Tips for building up the Vensim Model ;

•When production occurs, goods are not immediately sold.

•They are stored in an Inventory until a sale occurs.

•Higher sales will result in higher production through other

variables

INVENTORY: It is a Level (Stock) variable: Flow In and Flow Out

WORKFORCE: It is a Level (Stock) variable. More people make more products

PRODUCTION, SALES, NET HIRE RATE: They are all rate variables as they flow

in or out of Stock variables

TARGET PRODUCTION, TARGET WORKFORCE, PRODUCTIVITY: Ordinary

variables

BEHAVIOURAL RELATIONSHIPS

•Production is proportional to workforce

•Net hire rate depends on the workforce value

•Production is to be affected by a productivity rate

First model – Initial Vensim model

POPULATION BEHAVIOUR

First model – Initial Vensim model

POPULATION BEHAVIOUR

First model – Initial Vensim model

POPULATION BEHAVIOUR

Parameters of the system;

• Initial value of inventory : 300 units

• Sales : The sales amount is 100 units for 20 months. After 20 months, it

is 150 units

• Productivity is 1

• Time to adjust workforce level is: 10 months

• Initial workforce level: 100 workers

Equations;

• Inventory = Production – Sales

• Target Production = Sales

• Target Workforce = Target Production / Productivity

• Net hire rate = (Target Workforce – Workforce)/Time to adjust workforce

• Production = Workforce * Productivity

First model – Initial Vensim model

POPULATION BEHAVIOUR

Results

Quiz 5: Vensim modeling for production

management

Question 1: Produce same model in Vensim and test

the same model for an initial of 30 workers. How

does production, workforce and inventory profile look

like?

Question 2: Carefully analyse the results from the

model. Check production, workforce and inventory

graphs. Are results correct? Is there any fundemental

error in the model? If so, what is it?

Dr. Daniel Xing (x.xing3@liverpool.ac.uk)

EBUS-504

Operations Modelling and Simulation

Build your first SD model

University of Liverpool

Management School,

UK

mailto:c.iris@liverpool.ac.uk

1

Module Specification

EBUS504 – OPERATIONS MODELLING AND SIMULATION

Contents

1. Module Details …………………………………………………………………………………………………………………………………………………………………………………………………………………. 1

2. Aims and Content ………………………………………………………………………………………………………………………………………………………………………………………………………………

3

3. Learning and Teaching Methods ………………………………………………………………………………………………………………………………………………………………………………………….

5

4. Assessments …………………………………………………………………………………………………………………………………………………………………………………………………………………….. 5

5. Module Outcomes (learning outcomes, skills and other attributes) …………………………………………………………………………………………………………………………………………

6

6. Supplementary Information………………………………………………………………………………………………………………………………………………………………………………………………..

7

1. Module Details

Module Title: OPERATIONS MODELLING AND SIMULATION

Short Title: OPS MODELLING AND SIMULATION

Module Code: EBUS50

4

Marketing Module Synopsis: This module will give students an understanding of the role of modelling and simulation in the development and improvement of

business processes in a commercial environment. Important elements include analytical techniques of systems, statistical aspects of

modelling and system dynamics. Extensive use will be made of a variety of commercially available modelling and simulation tools

such as Witness.

Credits: 15

Level: Level 7

Delivery Location(s) Liverpool Campus

2

Semester: First Semester

Academic Year: 2022-23

Faculty: Faculty of Humanities and Social Sciences

School/Institute (Level 2): Management School

Curriculum Board (level 1): ULMS PG

Module Coordinator: Xinjie (Daniel) Xin

g

Other staff: David Horne, Julie Reddy, Luc Bostock, Laura Brough, Leon Bedeau, Luke Dowdall, Michael McDonough, Mary Jlassi, Thomas Lloyd,

Nicola Wood,, Tolga Bektas

External Examiner(s):

Pre-requisites: N/A

Co-requisites: N/A

Barred Combinations: N/A

CE/CPD Provision: No

Maximum Places: N/A

Subject: 100079: Business Studies 100%

HESA Cost Centre(s): Business & management studies

3

Notes:

Status: Modification

The table below is automatically completed from programme data held in Curriculum Manager; during 2019/20 it is likely to have no data or incomplete data until all

programme records are in Curriculum Manager.

In Programmes: Programme Validation

Status

Module Status: Programme Stage / Group /

Sub-group

Operations and Supply Chain Management Master of Science (MSc) 2022-23 Validated Optional Semester 1

Business Analytics and Big Data Master of Science (MSc) 2022-23 Validated Optional Semester 1

Project Management (MSc) 2022-23 Validated Optional Semester 1

The table below must be completed for module approval, including confirmation that there are zero costs to the student.

Student Cost(s

)

Costs range:

Cost Type: Description: Value type (exact, approximate or max/min

range):

Cost (exact or approximate): Minimum Cost: Maximum Cost:

Student Cost There are no studen

t

costs associated with

this module.

Exact 0.00

2. Aims and Content

Educational Aims:

To understand a range of modelling analytical methods and their appropriate applications;

To understand the dynamic nature of systems and their behavioural characteristics;

4

To understand how real system modules are developed, tested and validated;

To develop confidence in the use of commercially available simulation tools such as Excel, Witness, Matlab and Vensim.

Overview:

This module will give students an understanding of the role of modelling and simulation in the development and improvement of business processes in a commercial

environment. Important elements include analytical techniques of systems, statistical aspects of modelling and system dynamics. Extensive use will be made of a variety

of commercially available modelling and simulation tools such as Matlab and Witness.

Outline Syllabus:

Introduction to modelling theory.

The use of modelling to support Inventory management, the witness interface for process simulation.

The use of Discrete event simulation, industry examples.

Flow diagram approaches and the application in case studies from industry.

Data analytics tools to support data processing, modelling and simulations, data analysis techniques.

The use of System dynamic Modelling.

Demonstrating the practical aspects of developing simulation models with a review of the benefits and problems encountered.

Assignment Exercises.

Reading lists and resources:

Type Category Title Description

General Resource Link to Reading Lists Reading lists are maintained at readinglists.liverpool.ac.uk

5

3. Learning and Teaching Methods

Summary of Learning and Teaching Methods:

On campus delivery with social distancing.

2 hour face-to-face synchronous lecture per week x 12 weeks

1 hour face-to-face seminar every other week x 6 weeks

1 hour face-to-face peer-to-peer learning every other week (unscheduled) x 6 weeks

Self-directed learning x 114 hours

The following table must be completed for module approval, accounting for all hours associated with the credit value of the module, e.g. for 15 credits there should b

e

150 hours of learning and teaching activity, including independent learning.

Learning and Teaching Method: Length (Minutes): Times per Week

(if

applicable):

Number of Weeks (if

applicable):

Calculated Hours (if

applicable):

Hours:

Self-Directed Learning N/A N/A N/A N/A 114

E-lecture 60 1 12 12 12

Seminar 60 1 6 6 6

E-lecture (Unscheduled) 60 1 12 12 12

Peer Learning (Unscheduled) 60 1 6 6 6

4. Assessments

Assessment Strategy:

Modelling and simulation assignment, 5 weeks x 2 hours each, 100%

All fields in the table below must be completed for module approval.

6

M

e

th

o

d

D

e

sc

ri

p

ti

o

n

Ty

p

e

U

n

it

s

o

f

L

e

n

gt

h

Le

n

gt

h

M

in

M

ax

D

e

sc

ri

p

ti

o

n

(r

e

le

n

gt

h

)

W

e

ig

h

ti

n

g

A

ss

es

sm

e

n

t

p

e

ri

o

d

(s

)

G

ro

u

p

W

o

rk

M

u

st

P

as

s

Fi

n

al

A

ss

es

sm

e

n

t

Coursework Simulation

There is a resit opportunity.

Standard UoL penalty applies for late

submission.

This is an anonymous assessment.

Summative Other N/A N/A N/A 5 weeks x

2 hours

each

100 % Sem 1 No Yes

Please see Appendix 1 for details of the outcomes tested by the above assessments.

5. Module Outcomes (learning outcomes, skills and other attributes)

Ref No. Learning Outcome / Skill: Category:

LO1 Be able to design models for business process reengineering; Learning Outcomes

LO2 Be able to specify, and justify a computer simulation for business process modelling; Learning Outcomes

LO3 Be able to apply statistical and analytical techniques for business optimisation and evaluation; Learning Outcomes

S1 Adaptability. Students will develop adaptability by engaging with case studies from their lab sessions in order to understand

modelling and simulation processes and the features of different modelling tools.

Skills

S2 Problem solving skills. Students will develop problem solving skills through lab sessions and case studies as part of their assignment. Skills

S3 Commercial awareness. Students will develop knowledge of commercial contexts of technology applications. Skills

S4 Teamwork. Students will be expected to work together in groups for some lab sessions. Skills

S5 Organisational skills. Students will be expected to work together to solve some hands-on case studies jointly. Skills

S6 Communication skills. Students will develop communication skills by engaging with case studies, report writing and working in groups. Skills

S7 IT skills. IT skills will be developed during practical lab sessions. Skills

7

Ref No. Learning Outcome / Skill: Category:

S8 International awareness. Students will develop international awareness through case studies of business and technologies in an

international context.

Skills

S9 Lifelong learning skills. Students will develop skills of lifelong learning through preparation for their assessments and self-directed

study of cases in preparation for class discussions.

Skills

S10 Ethical awareness. Students will develop their awareness of ethical issues through research and preparation for assessment. Skills

S11 Leadership. Leadership skills will be developed during in-lecture discussions and lab session practices. Skills

6. Supplementary Information

If a risk assessment is required for this module for students under 18, please record a summary of the risks: N/A

Module Specification Appendix 1: Assessments and the Outcomes Tested

Module Title OPERATIONS MODELLING AND SIMULATION

Module Code EBUS504

In the table below, all fields should be completed for approval, except for the Weighting field for a Formative Type assessment method.

Assessment Method Type Weighting Marked out of Pass Mark Learning Outcomes / Skills Tested

Coursework Summative

100 % 100 50 LO1, LO2, LO3, S1, S11, S2, S3, S4, S5, S6,

S7, S8, S9

ASSIGNMENT

The University of Liverpool Management School

2022 – 2023

EBUS504 Operations Modelling and Simulation

DEADLINE: January 13th, 2023 before 12 noon

Lateness Penalty: Five percentage points shall be deducted from the assessment mark for

each working day after the due date up to a maximum of five working days; however, the

mark will not be reduced below the pass mark for the assessment (50%). Work assessed at

below 50% will not be penalised for late submission of up to five working days. Work received

more than five working days after the submission deadline will receive a mark of zero.

Cheating: This is an individual assignment. You can discuss your general understanding of the

exercise with colleagues of other groups, but you must write up your unique project report

yourself. Standard UoL code applies. University regulations about cheating – especially

COLLUSION and PLAGIARISM (copy from sources without acknowledgement or other student

reports) – apply.

Hand-in procedure: Hand your work electronically by submitting a copy through the Turnitin

link on CANVAS. If your work is late for medical or other good cause, attach a copy of your

certificate and/or explanation.

Notes:

You must submit:

● One electronic copy (doc, docx or PDF) through CANVAS

(EBUS504_SMITH_20091234 )

● An electronic copy of the Witness, Vensim and Excel files developed through on

CANVAS (all in one zip or rar file with your name and ID as filename e.g.

EBUS504_SMITH_20091234.zip)

1. Practical questions: System Dynamics (40 Marks)

The COVID-19 pandemic has a massive negative impact on human wellbeing and the global economy

since its outbreak at the end of 2019. Early studies have shown that using Personal Protective

Equipment (PPE) helps for protection against the spread of the disease. Therefore, retailers have put

an enormous effort on the stable, reliable, and rapid management of PPE supply chain. During the

pandemic, the procurement and inventory management for PPE has gained immense attention.

Retailers believe that system dynamics might help them plan procurement, inventory and sales

planning for PPE. It is very well known that if there is no PPE inventory, there can be no sales. In other

words, PPEs are sold from inventory. It is also known that if there is no PPE procurement, there is no

PPE inventory. Each PPE item first goes into inventory once they arrive. If the PPE sales increase,

retailers purchase more PPE.

To be on the relatively safe side, retailers have a target inventory which is equal to coverage level (c

months) times PPE sales (i.e. target inventory is c months of sales). There is a time to replenish PPE

inventory and it is called lead time.

a) Draw the Causal-loop diagram, put the sign (positive or negative) for the whole model and write

equations for variables. (10 Marks).

b) A retailer has a coverage level of 4 months and the lead time of PPE is 1.5 months. Assume that the

retailer has an initial inventory level of 120000 PPE and the demand of PPE has a step-wise function.

Demand is 18000 units between 0-19 months, demand is 45000 between 25-65 months, and finally

demand is 66000 units between 75-100 months. (20 Marks).

– Establish complete model on Vensim and report model as screenshot in the report. Run this model

on Vensim for 120 months with time step of 0.35.

– Discuss results for inventory level, procurement level and show graphs of results.

– Make recommendations to the retailer.

c) Apart from retailers, governments also have a similar problem of PPE procurement and inventory

management as their frontline workers need PPE for free of charge. If you are asked to solve this

problem for a government organisation, what would change in your model and in your parameters?

Critically discuss this new setting. (10 Marks).

2. Practical questions: operations modelling (60 Marks)

a) Based on the specification of your project in Lab 1, please propose a solution in Witness to

simplify your shopfloor set-up (i.e. remove unnecessary entities) and smooth your post-split

production process (i.e. less blockage) but not to compromise your current productivity. Draw a

cross-functional flowchart to demonstrate the new production design. Upload this new model in

your ZIP file and name it as MOD1 (10 Marks).

b) Based on MOD1, if the cycle times of your oven are uniform (15,19) for I-type, normal (20, 3) for

II-type and uniform (20, 27) for III-type. Please use appropriate method to identify when your system

will reach a steady-state. Detailed analysis is expected to support your argument (10 Marks).

c) Based on MOD1, use appropriate analytical method(s) to identify the bottleneck of your model

and give detailed analysis (10 Marks).

d) Based on MOD1, assuming one of your three ovens is broken down, please propose a backup plan

(based on your current resource) to continue your production and try to make the corresponding

disruption as little as possible. Detailed analysis is expected to support your plan and your new

model should be named as MOD2 in your ZIP file (10 Marks).

e) Based on MOD2, all the paint stations are now becoming manual machines and you are given

10000 pcs P1, 10000 pcs P2, 10000 pcs P3, and 10000 pcs P4 to be planned. The initial labour source

costs you £3000/person. Assuming each labour has 100% energy at the start of your simulation and

every 480 minutes, all labours’ energy level will be reset back to 100%. It consumes 2% energy

/working minute for each labour and every one minute idle time can help a labour restore 0.5%

energy. If any job will run out of a labour’s 100% energy, he/she will refuse to carry out any further

work until it is reset to 100% and one major unsatisfaction will be marked. When any labour has

accumulated 3 major satisfactions, he or she will resign from your company and it will cost you

£5000 to recruit a replacement. If I-type product can be sold for £800/pc, II-type product can be sold

for £950/pc and III-type can be sold for £1200/pc, please advise the optimal labour size and optimal

number of I-type, II-type and III-type products to be produced based on your given inventory (i.e.

10000 pcs P1, 10000 pcs P2, 10000 pcs P3, and 10000 pcs P4). You should save your optimised

model as MOD3 in your ZIP file. Detailed analysis is required and please critically reflect the

implications of your solution with respect to real-life operations (20 Marks). Hint: 1) ISTATE(element

name) function can return you the state of a specific element when this function is called. 2) Use IF

action together with AND can verify multiple conditions at the same time. For example:

IF (A>=5) AND (B>=4)

C=C+1

ENDIF

1

Module Specification

EBUS504 – OPERATIONS MODELLING AND SIMULATION

Contents

1. Module Details …………………………………………………………………………………………………………………………………………………………………………………………………………………. 1

2. Aims and Content ………………………………………………………………………………………………………………………………………………………………………………………………………………

3

3. Learning and Teaching Methods ………………………………………………………………………………………………………………………………………………………………………………………….

5

4. Assessments …………………………………………………………………………………………………………………………………………………………………………………………………………………….. 5

5. Module Outcomes (learning outcomes, skills and other attributes) …………………………………………………………………………………………………………………………………………

6

6. Supplementary Information………………………………………………………………………………………………………………………………………………………………………………………………..

7

1. Module Details

Module Title: OPERATIONS MODELLING AND SIMULATION

Short Title: OPS MODELLING AND SIMULATION

Module Code: EBUS50

4

Marketing Module Synopsis: This module will give students an understanding of the role of modelling and simulation in the development and improvement of

business processes in a commercial environment. Important elements include analytical techniques of systems, statistical aspects of

modelling and system dynamics. Extensive use will be made of a variety of commercially available modelling and simulation tools

such as Witness.

Credits: 15

Level: Level 7

Delivery Location(s) Liverpool Campus

2

Semester: First Semester

Academic Year: 2022-23

Faculty: Faculty of Humanities and Social Sciences

School/Institute (Level 2): Management School

Curriculum Board (level 1): ULMS PG

Module Coordinator: Xinjie (Daniel) Xin

g

Other staff: David Horne, Julie Reddy, Luc Bostock, Laura Brough, Leon Bedeau, Luke Dowdall, Michael McDonough, Mary Jlassi, Thomas Lloyd,

Nicola Wood,, Tolga Bektas

External Examiner(s):

Pre-requisites: N/A

Co-requisites: N/A

Barred Combinations: N/A

CE/CPD Provision: No

Maximum Places: N/A

Subject: 100079: Business Studies 100%

HESA Cost Centre(s): Business & management studies

3

Notes:

Status: Modification

The table below is automatically completed from programme data held in Curriculum Manager; during 2019/20 it is likely to have no data or incomplete data until all

programme records are in Curriculum Manager.

In Programmes: Programme Validation

Status

Module Status: Programme Stage / Group /

Sub-group

Operations and Supply Chain Management Master of Science (MSc) 2022-23 Validated Optional Semester 1

Business Analytics and Big Data Master of Science (MSc) 2022-23 Validated Optional Semester 1

Project Management (MSc) 2022-23 Validated Optional Semester 1

The table below must be completed for module approval, including confirmation that there are zero costs to the student.

Student Cost(s

)

Costs range:

Cost Type: Description: Value type (exact, approximate or max/min

range):

Cost (exact or approximate): Minimum Cost: Maximum Cost:

Student Cost There are no studen

t

costs associated with

this module.

Exact 0.00

2. Aims and Content

Educational Aims:

To understand a range of modelling analytical methods and their appropriate applications;

To understand the dynamic nature of systems and their behavioural characteristics;

4

To understand how real system modules are developed, tested and validated;

To develop confidence in the use of commercially available simulation tools such as Excel, Witness, Matlab and Vensim.

Overview:

This module will give students an understanding of the role of modelling and simulation in the development and improvement of business processes in a commercial

environment. Important elements include analytical techniques of systems, statistical aspects of modelling and system dynamics. Extensive use will be made of a variety

of commercially available modelling and simulation tools such as Matlab and Witness.

Outline Syllabus:

Introduction to modelling theory.

The use of modelling to support Inventory management, the witness interface for process simulation.

The use of Discrete event simulation, industry examples.

Flow diagram approaches and the application in case studies from industry.

Data analytics tools to support data processing, modelling and simulations, data analysis techniques.

The use of System dynamic Modelling.

Demonstrating the practical aspects of developing simulation models with a review of the benefits and problems encountered.

Assignment Exercises.

Reading lists and resources:

Type Category Title Description

General Resource Link to Reading Lists Reading lists are maintained at readinglists.liverpool.ac.uk

5

3. Learning and Teaching Methods

Summary of Learning and Teaching Methods:

On campus delivery with social distancing.

2 hour face-to-face synchronous lecture per week x 12 weeks

1 hour face-to-face seminar every other week x 6 weeks

1 hour face-to-face peer-to-peer learning every other week (unscheduled) x 6 weeks

Self-directed learning x 114 hours

The following table must be completed for module approval, accounting for all hours associated with the credit value of the module, e.g. for 15 credits there should b

e

150 hours of learning and teaching activity, including independent learning.

Learning and Teaching Method: Length (Minutes): Times per Week

(if

applicable):

Number of Weeks (if

applicable):

Calculated Hours (if

applicable):

Hours:

Self-Directed Learning N/A N/A N/A N/A 114

E-lecture 60 1 12 12 12

Seminar 60 1 6 6 6

E-lecture (Unscheduled) 60 1 12 12 12

Peer Learning (Unscheduled) 60 1 6 6 6

4. Assessments

Assessment Strategy:

Modelling and simulation assignment, 5 weeks x 2 hours each, 100%

All fields in the table below must be completed for module approval.

6

M

e

th

o

d

D

e

sc

ri

p

ti

o

n

Ty

p

e

U

n

it

s

o

f

L

e

n

gt

h

Le

n

gt

h

M

in

M

ax

D

e

sc

ri

p

ti

o

n

(r

e

le

n

gt

h

)

W

e

ig

h

ti

n

g

A

ss

es

sm

e

n

t

p

e

ri

o

d

(s

)

G

ro

u

p

W

o

rk

M

u

st

P

as

s

Fi

n

al

A

ss

es

sm

e

n

t

Coursework Simulation

There is a resit opportunity.

Standard UoL penalty applies for late

submission.

This is an anonymous assessment.

Summative Other N/A N/A N/A 5 weeks x

2 hours

each

100 % Sem 1 No Yes

Please see Appendix 1 for details of the outcomes tested by the above assessments.

5. Module Outcomes (learning outcomes, skills and other attributes)

Ref No. Learning Outcome / Skill: Category:

LO1 Be able to design models for business process reengineering; Learning Outcomes

LO2 Be able to specify, and justify a computer simulation for business process modelling; Learning Outcomes

LO3 Be able to apply statistical and analytical techniques for business optimisation and evaluation; Learning Outcomes

S1 Adaptability. Students will develop adaptability by engaging with case studies from their lab sessions in order to understand

modelling and simulation processes and the features of different modelling tools.

Skills

S2 Problem solving skills. Students will develop problem solving skills through lab sessions and case studies as part of their assignment. Skills

S3 Commercial awareness. Students will develop knowledge of commercial contexts of technology applications. Skills

S4 Teamwork. Students will be expected to work together in groups for some lab sessions. Skills

S5 Organisational skills. Students will be expected to work together to solve some hands-on case studies jointly. Skills

S6 Communication skills. Students will develop communication skills by engaging with case studies, report writing and working in groups. Skills

S7 IT skills. IT skills will be developed during practical lab sessions. Skills

7

Ref No. Learning Outcome / Skill: Category:

S8 International awareness. Students will develop international awareness through case studies of business and technologies in an

international context.

Skills

S9 Lifelong learning skills. Students will develop skills of lifelong learning through preparation for their assessments and self-directed

study of cases in preparation for class discussions.

Skills

S10 Ethical awareness. Students will develop their awareness of ethical issues through research and preparation for assessment. Skills

S11 Leadership. Leadership skills will be developed during in-lecture discussions and lab session practices. Skills

6. Supplementary Information

If a risk assessment is required for this module for students under 18, please record a summary of the risks: N/A

Module Specification Appendix 1: Assessments and the Outcomes Tested

Module Title OPERATIONS MODELLING AND SIMULATION

Module Code EBUS504

In the table below, all fields should be completed for approval, except for the Weighting field for a Formative Type assessment method.

Assessment Method Type Weighting Marked out of Pass Mark Learning Outcomes / Skills Tested

Coursework Summative

100 % 100 50 LO1, LO2, LO3, S1, S11, S2, S3, S4, S5, S6,

S7, S8, S9

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 3

Bottleneck analysis

University of Liverpool

Management School,

UK

Key learning outcomes

1. Understand what is a “bottleneck” to a simulation;

2. Use of bottleneck for different analysis;

Building a Simulation Model

3. STRUCTURED

WALK-THROUGH

2. DATA AND

MODEL DEFINITION

1. PROBLEM

FORMULATION

6. VALIDATE

MODEL

5. PERFORM

PILOT

RUNS

4. BUILD MODEL

AND VERIFY

10. DOCUMENT AND

IMPLEMENT RESULTS

9. ANALYSE OUTPUT

DATA

8. MAKE PRODUCTION

RUNS

7. DESIGN

EXPERIMENTS

Bottleneck

The term Bottleneck is used to describe “a point of congestion in any

system from computer networks to a factory assembly line. In such a

system, there is always some process, task, machine, etc. that is the

limiting factor preventing a greater throughput and thus determines the

capacity of the entire system.” (Goldratt and Cox, 1984)

Bottleneck is critical

1. It determines the throughput of the entire system, i.e. the production

pace;

2. Most effective way to improve the entire system;

3. It constrains the utilisation and performance of other resources.

2

mins

1min

8mins 4mins

Finding bottleneck is not always straightforward

Examples:

1. The production of product A requires a sequential processes and their

operation time is 3mins, 5mins and 7mins respectively;

2. Product A is assembled by 4 components (2Bs, 1C and 1D) with

2mins.

Each type of component requires a pre-processing operation with

machine time 3mins, 5mins, and 4mins respectively.

3. A supermarket has three tills to serve its customers. Each till needs

2mins on average to finish the service and customers arrive the store

every 1min.

4. A line production is comprised by 3 machines with operation time

6mins, 8mins and 4mins respectively. Every machine needs a 2mins

setup by L1 (there is only one labour available) and part arrives

every

2mins.

Analytical-based methods

Input rate vs.

output rate

Bottleneck of your system is always identified when input rate is faster than

output rate

The busiest resource (capacity analysis)

Filter out the entity in the system which takes the longest time to complete a job

The most congested place (throughput analysis)

The place where a part takes the longest time to enter and leave it.

Product production lifecycle analysis

From raw material(s) until the completion of an end-product, analysing how

much time in percentage that each component needs to be operated with.

How do we find the bottleneck?

How can we use the aforementioned techniques to locate your bottleneck?

Use Gantt chart for a solution!!

2min 1mins 8mins 4mins

P1

arrives

every 2

mins

Why bottleneck is so important?

1. It defines the maximal throughput rate of your system.

2. It helps modellers quickly locate queues

3. It helps you identify the total outputs at a certain point. (How do you

calculate it?)

4. It defines the maximal utilisation rate for each entity of your system.

(How do you calculate it?)

5. Most importantly, it provides further improvement directions. (Why and

how will you anticipate your improvement?)

Bottleneck and simple queues

1. Where will you build up queues?

2. How do we interpret different queues?

1min 2mins 8mins 4mins

P1

arrives

every

1min

Bottleneck and simple queues

1. Where will you build up queues?

2. How do we know the waiting time for the 10th part? 50th part? Or the nth

part?

3. How do we know the queue size at minute 50? Or minute 100? Or the

nth minute?

2mins 1min 8mins 4mins

Intro for next week – steady state analysis

Recall the example and think the following questions:

1. What is the difference between the first output and any future outputs?

2. Why do we need to exclude warm-up period?

3. What if some rates are uncertain?

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 2

Bottleneck analysis

University of Liverpool

Management School,

UK

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Witness Intro

Build your first model in Witness

University of Liverpool

Management School,

UK

Objective of this session

• Understand Witness modelling and simulation foundations;

• Learn the basic Witness functions and elements;

• Build your first Witness model and walk around

Witness

Statistics

;

• Understand different input rules;

First look of Witness GUI

Standard

toolbar

Menu

Witness

toolbar

Simulation space

List of

simulation

elements

Interactive

window

Designer elements for

quick built-upSimulation toolbar

Basic elements

✓ Part- representing

materials and products;

✓ Buffers- representing

storage, warehouse, and

queues etc.;

✓ Machine- representing

the machinery resource

which can be used for

processing materials or

serving customers;

✓ Labour- representing

manpower for different

operational purposes.

Element types

• Part types

➢ Active – output from external world, details of its output need to be specified.

➢ Passive – produced internally, no output details is needed.

• Machine types

➢ Single: One in one out;

➢ Batch: X in one out but inputs are not transformed;

➢ Assembly: X in one out and outputs are assembled from the input parts;

➢ Production: One in X out and the output types can be defined.

Elements of a sample model

• Model description

A1

B1

M1

L1

A1

o Arrives every 3 minutes

o First arrival at 2 minutes

o Lot size: 4

o Output: Push to B1

M1

o Input: pull from B1

o Cycle time: 5 minutes

o Setup: L1 spends 2 minutes for

every operation and start from

the first operation

o Output: Push to ship

Elements interactive play

• Input and output rules

❑ Part:

✓ Only active parts has output rules

❑ Machine:

✓ Input rule: wait (passive input rule) or different proactive input rules

✓ Output rule: wait (passive onput rule) or different proactive onput rules

❑ Buffer

✓ No input nor output rule

❑ Conveyor

✓ Same as machine

Define input and output rules

• Method 1 – write your syntax in element detail dialog box

Define input and output rules

• Method 2 – Visual input & output rule

Labour rules

• In setups

Labour rules

• For manual machines

Basic modelling steps

• Step 1: Define Witness elements (use designer elements for

build-up);

• Step 2: Change element graphics if necessary

• Step 3: Detail your elements;

• Step 4: Define your input and output rules;

• Step 5: Simulate, verification and analysis.

Simulate your model

Reset your

simulation

Pause your

simulation

Step run your

simulation

Run your

simulation

Fast forward your simulation

to the defined

end time

Current time of your

simulation

Warmup period

Pre-defined simulation

end time

Animated simulation

active/de-active and

speed

Motion speed of your

animation

Statistics

Statistics

Statistics

Statistics

Dr. XINJIE XING

EBUS

–

504

Operations Modelling and Simulation

Introduction to

System Dynamics

University of Liverpool

Management School,

UK

Learning outcomes

• Understand and realise what a system is.

• Visualise the System Dynamic perspective for

any process.

• Apply causal loops diagram to represent the

System Dynamic approach.

• Use the tool VENSIM to model and simulate

manufacturing and supply chain processes.

Recommended reading material

• Chapter 4 of Kramer, N.J.T.A. and de Smit,J., “Systems thinking”, Martinus

Nijhoff Social Science Division, 1977, ISBN 90 207 0587 3, The Netherlands.

• Campuzano, F. and Mula, J. (2011). Supply Chain Simulation. A System

Dynamics Approach for Improving Performance. Springer, 1st Edition. ISBN

978-0-85729-718-1

• Ford, A. (2009). Modeling the environment , 2nd Edition.

• Hernández, J.E., Zarate, P., Dargam, F., Delibašić, B., Liu, S. and Ribeiro, R.

(2012). Decision Support Systems – Collaborative Models and Approaches in

Real Environments. Lecture Notes in Business Information Processing,

Springer, Volume 121. DOI: 10.1007/978-3-642-32191-7

• Towill, D.R., “System dynamics, background, methodology and applications”,

IEE Computing and Control Engineering Journal, October 1993, pp201-208 and

pp261-268.

What a System is?

• A system can be broadly defined as an integrated set of

elements that accomplish a defined objective.

• People from different engineering disciplines have

different perspectives of what a “system” is.

For example:

• Software engineers often refer to an integrated set of computer programs as a

“system.”

• Electrical engineers might refer to complex integrated circuits or an integrated

set of electrical units as a “system.”

• As can be seen, “system” depends on one’s perspective, and the “integrated

set of elements that accomplish a defined objective” is an appropriate

definition.

System perspective – relationships

Aggregated

view

System perspective – relationships

Containing

system

Intra

connection

System of

interest

Sub-system

System perspective – relationships

Containing

system

System A System B

System C System D

System E

E = f ( A , B , C , D )

Generally math operators

such as:

+

, -, /, x

Behaviours

Behaviours

Behaviours Behaviours

Behaviours

Dynamic approach of systems

• Changing over

time

• Tightly coupled

• Governed by feedback

• Nonlinear: changing dominant structure

• Adaptive

• Counterintuitive

• Characterised by tradeoffs

• History-dependent

• Policy resistant

System are complex, and they can help us to understand, explain,

anticipate, and make decisions considering an inexact

Representation of the reality.

System Dynamics

System Dynamics

We can make adjustments to the structure which are

consistent with the behaviour we would like to produce.

Behaviour

System Structure

Events

System Dynamics

• Can be seen as the application of control systems

principles to problems associated with;

• Manufacturing management

• Supply Chain

• Logistics

• Forecasting

• Organisations

• Socioeconomics

• Human behaviours

http://www.control-systems-principles.co.uk/

Additional information about control systems

System dynamics for traffic management

System dynamics for population planning

Relationship between states is paramount in system dynamics

System Dynamics – Electric Power Industry

Andrew Forda, System Dynamics and the Electric Power Industry, System Dynamics Review Vol. 13, No. 1, (Spring 1997):

57–85

System Dynamics – Inventory Management

Listl A. Notzon I. 2000 An operational application of system dynamics in the automotive industry: inventory

management at BMW Proceedings of the 18th International Conference of the Systems Dynamic Society Bergen 129 138

System Dynamics – Market model

Weil H. 2007. Application of system dynamics to corporate strategy: the evolution of issues and frameworks. In 50th

Anniversary System Dynamics Conference, Boston, MA.

System Dynamics – Healthcare systems

David Lane, Camilla Monefeldt and Jonathan Rosenhead. Emergency – but no Accident

– a system dynamics study of an accident and emergency department. Operational research society.

System Dynamics – Causal Loop diagrams

▪ Represent the feedback structure of systems

▪ Capture

o The hypotheses about the causes of dynamics

o The important feedbacks

System Dynamics – Causal Loop diagrams

• Bank Balance VS Earned

interest

▪ Bank Balance → Earned interest

▪ Earned interest → Bank Balance

• Study effort VS

Grade

▪ Study effort → Grade

▪ Grade → Study effort

Bank Balance Earned interest

Study effort Grade

Some relationships examples

Causal Loop diagrams – Polarity I

• The polarity information is used to address the positive ‘+’ or

negative ‘–’ relationship between variables. This can provide a

preliminary view and understanding about how the system will

behave.

• Positive relationship/feedback loop: Is represented by the symbol

‘+’ and means that increments in the first variable will generate

increments in the second variable, whether decrements in the first will

generate decrements in the second.

• Negative relationship/feedback loop: Is represented by the symbol

‘–’ and means that increments in the first variable will generate

decrements in the second variable, whether decrements in the first will

generate increments in the second.

Signing Arcs

+

+

+

–

Bank Balance Earned interest Study effort Grade

….FOR INSTANCE ….

Causal Loop diagrams – Polarity II

• Positive feedback loops

• Are represented by the symbol which is located in the centre of

the loop.

• This type of loop tends to generate the well-known “snowball”.

effect in where variable values continues to increase or decrease.

• Generate behaviors of growth, amplify, deviation, and reinforce.

• Negative feedback loops

• Are represented by the symbol which is located in the centre of

the loop.

• Tend to produce “stable”, “balance”, “equilibrium” and “goal-

seeking” behavior over

time

+

–

Bank Balance → Earned interest, Earned interest → Bank Balance

The better my Bank Balance is

The more Interest I earn

The more Interest I earn

The better my Bank Balance is

Causal Loop diagrams – Positive Feedback Loop

+

+

Bank Balance Earned interest+

The more Interest I earn

The better my Bank Balance is

The more grade I get

The more grade I get

The more study effort I made

The more I sleep The less tired I am

–

Causal Loop diagrams – Negative Feedback Loop

Study effort Grade

+

–

Study effort → Grade, Grade→ Study effort

The less study effort I made

The less grade I get

The less grade I get The more study effort I made

Causal Loop diagrams – Loop Dominance

• There are systems which have more than one

feedback loop within them.

• A particular loop in a system of more than one loop

is most responsible for the overall behavior of that

system.

• The dominating loop might shift over time.

• When a feedback loop is within another, one loop

must dominate.

• Stable conditions will exist when negative loops

dominate positive loops.

Causal Loop diagrams – Nested Feedback Loop

Tim Haslett, Charles Osborne, (2000) “Local rules: their application in a system”, International Journal of Operations & Production

Management, Vol. 20 Iss: 9, pp.1078 – 1092

Use of managers

local rates

Delay for

other parts

Speed of return

to stock out bins

Stock outs

Usage rates

Part in bins Posting of kanbans

Manufacturing of parts

Queue length

Delays

+ –

–

–

+

+

+ +

+

+

+

+

–

–

– -+

• Items that affect other items in the system but are

not themselves affected by anything in the system.

• Arrows are drawn from these items but there are no

arrows drawn to these items.

Causal Loop diagrams – exogenous items

-Study effort Grade

+

–

Tougher

environmental

conditions

–

• Items that affect other items in the system but are

not themselves affected by anything in the system.

• Arrows are drawn from these items but there are no

arrows drawn to these items.

Causal Loop diagrams – 2nd example exogenous

+Births Population

+

+

Birth rate

+

Systems often respond sluggishly

Causal Loop diagrams –

delay

s

-Birth School

attendance

+

– Foreign

students

+

Delay

Delay

Birth rate

+

Causal loop diagram – Industry example

• A formal modelling approach based on systems thinking

• It is used for complex problems where system variables change over time

• It specifically applies to problems where feedback plays a significant role

• Example: Sales staff motivation scheme in a niche market

o Sales staff get paid more for more

sales

o Staff are motivated to sell more if they are paid more

o The market has a limited capacity for the product

Motivation

Sales

Income

Productivity

increases

increases

increases

increases

SALES

STAFF

Available

Sales

Decreases

After a

delay

decreases

Market

size

constraint

decreases

MARKET

Cumulative

sales

time

Causal loop diagram – In general

Variable A

Variable B

( + )

Variable A Variable B

( – )

Positive Link:

An increase in A will result in an Increase in B

Negative Link:

An increase in A will result in an decrease in B

Positive Link with time delay:

An increase in A will result in an Increase in B

after a time delay (dt)Variable A Variable B

( + )

| |

Variable A Variable B

( – )

| |

Negative Link with a time delay:

An increase in A will result in an decrease in B

after a time delay (dt)

delay

delay

Causal loop diagram – In general

Variable A

Variable B

Variable C

Variable E

Variable D

( – )

( + )

( + )

( + )

( – )

Positive Loop

(even number of –ve links)

Negative Loop

(odd number of –ve links)

Variable A

Variable B

Variable C

Variable E

Variable D

( – )

( + )

( + )

( – )

( – )

( – )( + )

Basic Behaviour Patterns

time

S-Shape

time time

time

Exponential Goal seeking

Oscillating

Quiz 1

POPULATION BEHAVIOUR

From one study about the population behaviour in one particular area, it has

been found that a relationship between births and deaths exist in order to realise

the current population. The study stands for the fact that birds add to the size of

the population, in where a larger population will tend to have more births in the

future. On the other hand, deaths will reduce the number of population, then a

larger population will tend to have greater number of deaths. In both cases, the

rates of birth and death are an exogenous variable.

• Identify the main elements that define this model and their relationships.

• Build up the causal loop diagram.

• Identify the positive and negative feedback loops linked to this study.

Source: Ford, A. (2009). Modeling the environment , 2nd Edition.

Quiz 2

AUTOMOTIVE MARKET

In this example, the automotive market is defined in a way that the car

production builds the inventory of cars at the dealer. For this, it has been found

that a higher inventory leads to a lower market price, and lower market prices

cause less car production in the future. In terms of the economics of the

environment, if the price of cars were to increase, the retail sale of cars would

tend to fall and, retail sales drain the inventory of cars held in stock at the

dealership. This means that a decline in the inventory will cause the dealers to

raise their prices in the future.

• Identify the main elements that define this model and their relationships.

• Build up the causal loop diagram.

• Identify the positive and negative feedback loops linked to this study.

Source: Ford, A. (2009). Modeling the environment , 2nd Edition.

Quiz 3

POKET MONEY

This quiz is about to model the process when a child receive pocket money from

its parents. On one hand, the more money the parents earn the more money they

are likely to give to their child. On the other hand, the behaviour of the child can

be defined by two feedback loops. The first is oriented to describe the highly

probable fact that spending of the child increases with the available amount of

pocket money, and spending decreases this amount. The other feedback loop

describes the observation that the aunt hands over money to the child whenever it

comes to visit. Nevertheless, the child does not like its aunt too much, so with

increasing budget it is less inclined to see her.

• Identify the main elements that define this model and their relationships.

• Build up the causal loop diagram.

• Identify the positive and negative feedback loops linked to this study.

Source: Binder, T., Vox, A., Belyazid, S., Haraldsson, H. and Svensson, M. (2004)

Developing system dynamics models from causal loop diagrams, presented at the 22nd International

Conference of the System Dynamics. Society, Oxford, UK.

Dr. XINJIE XING

EBUS-504

Operations Modelling and Simulation

Introduction to System Dynamics

University of Liverpool

Management School,

UK

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 7

Introduction to

Linear Programming

University of Liverpool

Management School,

UK

Linear Programming

▪ Linear programming is used to solve optimization problems where all

the constraints, as well as the objective function, are linear equalities or

inequalities.

▪ Linearity is the property of a mathematical relationship (function) that

can be graphically represented as a straight line.

▪ E.g. mass and weight. W=mg

▪ Newton’s second law. F=ma

Key elements of LP

Linear programming is the method of considering different inequalities

relevant to a situation and calculating the best value that is required to be

obtained in those conditions. Some of the assumptions taken while working

with linear programming:

• The number of constraints should be expressed in the quantitative terms

• The relationship between the constraints and the objective function should be linear

• The objective function can be optimised

Components of LP:

▪ Decision variables

▪ Constraints

▪ Data

▪ Objective functions

Key characteristics

Constraints – The limitations should be expressed in the mathematical form, regarding

the resource.

Objective Function – In a problem, the objective function should be specified in a

quantitative way.

Linearity – The relationship between two or more variables in the function must be linear.

It means that the degree of the variable is one.

Finiteness – There should be finite and infinite input and output numbers. In case, if the

function has infinite factors, the optimal solution is not feasible.

Non-negativity – The variable value should be positive or zero. It should not be a negative

value.

Decision Variables – The decision variable will decide the output. It gives the ultimate

solution of the problem. For any problem, the first step is to identify the decision

variables.

Recall our previous example

Your company is selling A and B two types of carpets. Machine 1, 2, 3 are

used for production. Particularly, production of per square meter A needs

M1 for 1 hour and M2 for 2 hours and production of per square meter B

needs M1 for 1 hour, M2 for 1 hour and M3 for 1 hour. M1 cannot be used

over 300 hours per period, M2 cannot be used over 400 hours per period

and M3 cannot be used over 250 hours per period. The market price for A

is £50/m2 and for B is £100/m2. How many A and B do you plan to

produce per period to get the best revenue?

Mathematical formulation

𝑥1: square meters of A

𝑥2: square meters of B

Objective:

max

𝑥1

𝑥2

50𝑥1 + 100𝑥2

s.t.

𝑥1 + 𝑥2 ≤

300

2𝑥1 + 𝑥2 ≤

400

𝑥2 ≤ 250

𝑥1, 𝑥2 ∈ 𝑅+

Mathematical formulation

max

𝑥1𝑥2

50𝑥1 + 100𝑥2

s.t.

𝑥1 + 𝑥2 ≤ 300

2𝑥1 + 𝑥2 ≤ 400

𝑥2 ≤ 250

𝑥1, 𝑥2 ∈ 𝑅+

1 1

2

0

1

1

𝑥1

𝑥2

≤

300

400

250

50 100

𝑥1

𝑥2

Co-efficient

matrix

Variable

vector

Column

vector

𝑥1 𝑥2

Vectors and matrix

All constraints define the search space of our system. Particularly,

Coefficient matrix: a matrix consisting of the coefficients of the variables in

a set of linear equations. The matrix is used in solving systems of linear

equations.

➢ Its dimension is always 𝑚 ∗ 𝑛.

➢ 𝑚 rows indicate 𝑚 number of constraints.

➢ 𝑛 columns indicate 𝑛 number of variables will be considered.

Decision vectors: a vector space defined by decision variables.

➢ Its dimension is always 𝑛 ∗ 1

Multiplication between matrix and vector

Matrix-vector product

A general form for LP

max 𝑧 = 𝑐𝑇𝑥

s.t. 𝐴𝑥 = 𝑏

𝑥 ≥ 0

Where

𝐴 is the coefficient matrix

𝑐 =

𝑐1

.

.

.

𝑐𝑛

, 𝑏 =

𝑏1

.

.

.

𝑏𝑛

, 𝑥 =

𝑥1

.

.

.

𝑥𝑛

Solve LP graphically

𝑥1 + 𝑥2 ≤ 300

𝑥1

𝑥2

300

300

2𝑥1 + 𝑥2 ≤ 400

400

200

𝑥2 ≤ 250

50𝑥1 + 100𝑥2 = 0

Corner point

Solve LP

What if your LP problem has more than 3 variables?

Use Excel to solve a LP problem

Use Solver function to solve a LP

Build your cells for obj coefficients, coefficient matrix,

column vectors and decision vectors

Use Excel to solve a LP problem

Use Solver function to solve a LP

➢ Define your objective function and constraints

Build your objective function

Build your constraint function

Use Excel to solve a LP problem

Use Solver function to solve a LP

➢ Call solver to solve the problem

The cell for your obj function

The cells for your constraint functions

The cells for your column vector

Proposed exercise

1. A store wants to liquidate 200 of its shirts and 100 pairs of pants from last season. They have

decided to put together two offers, A and B. Offer A is a package of one shirt and a pair of pants

which will sell for 30. Offer B is a package of three shirts and a pair of pants, which will sell for50.

The store does not want to sell less than 20 packages of Offer A and less than 10 of Offer B.

How many packages of each do they have to sell to maximize the money generated from the

promotion?

Formulate your problem accordingly. Use both graphic and Excel solver to find the optimal

solution.

Proposed exercise

1. A factory uses a raw material whose price and availability vary seasonally. The price, availability

and factory requirement for each quarter of the next year are given in the following table.

The cost per ton of storing the material from one quarter to the next is £4 + 10% of the purchase

price. The material may also be stored for two quarters at double the above cost per ton, but will not

keep for longer than two quarters. No stock is held initially and none is required at the end. Find the

pattern of buying and storing that minimises the total cost. State any assumptions that you make.

Formulate your problem accordingly. Use Excel solver to find the optimal solution.

Quarter 1 2 3 4

Price /ton 110 100 120 130

Availability

(tons)

1000 1700 800 400

Requirement

(tons)

750 900 1000 850

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 7

Introduction to Linear Programming

University of Liverpool

Management School,

UK

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 4

Bottleneck analysis-2

University of Liverpool

Management School,

UK

Key learning outcomes

1. Bottleneck analysis recap;

2. Understand steady-state;

3. Analysis under uncertainty;

4. Setup uncertain parameters in Witness

5. Use variables and extract data for analysis

Why bottleneck is so important?

1. It defines the maximal throughput rate of your system.

2. It helps modellers quickly locate queues

3. It helps you identify the total outputs at a certain point.

4. It defines the maximal utilisation rate for each entity of your system.

5. Most importantly, it provides further improvement directions.

Any more?

Let’s do with some exercise

1. The production of product A requires a sequential processes and their

operation time is 3mins, 5mins and 7mins respectively;

2. Product A is assembled by 4 components (2Bs, 1C and 1D) with

2mins.

Each type of component requires a pre-processing operation with

machine time 3mins, 5mins, and 4mins respectively.

3. A supermarket has three tills to serve its customers. Each till needs

2mins on average to finish the service and customers arrive the store

every 1min.

4. A line production is comprised by 3 machines with operation time

6mins, 8mins and 4mins respectively. Every machine needs a 2mins

setup by L1 (there is only one labour available) and part arrives every

2mins.

Analytical-based methods

Input rate vs.

output rate

Bottleneck of your system is always identified when input rate is faster than

output rate

The busiest resource (capacity analysis)

Filter out the entity in the system which takes the longest time to complete a job

The most congested place (throughput analysis)

The place where a part takes the longest time to enter and leave it.

Product production lifecycle analysis

From raw material(s) until the completion of an end-product, analysing how

much time in percentage that each component needs to be operated with.

Analytical-based methods

The ultimate rule to determine a bottleneck under a deterministic setting:

“It is the only resource which makes all other resource waiting”:

✓ Any reduction in its utilisation can reduce the overall throughput

✓ Double its capacity can double the utilisation of any other resources if their

current utilisations are below 50%.

Analytical-based methods

Pros:

✓ Easy to build an overall understanding of your system;

✓ Helpful for model validation purposes;

✓ Light up the initial system improvement plans;

✓ Very effective for deterministic models;

Cons:

❖ Hard to identify the bottleneck when system structure is complex;

❖ Ineffective for stochastic models;

❖ Hard to capture all model details (good for long-term planning but not

short-term)

❖ Can be time consuming and potential human errors

Simulation-based methods

a) Methods based on machine utilisations

Simulating your model and determine the bottleneck based on the largest

average machine cycle time or the largest machine utilisation.

b) Methods based on waiting times or queue lengths

Simulating your model and the bottleneck should be at the process with the

largest DROP in waiting time or LONGEST queue length.

Simulation-based methods

c) The Arrow Method Based on Starving and Blocking

If the frequency of manufacturing blockage of machine m_i is larger than the

frequency of manufacturing starvation of machine m_i+1, the bottleneck is

downstream of machine of machine m_i. If the frequency of the manufacturing

starvation of machine m_i is larger than the frequency of manufacturing

blockage of m_i-1, the bottleneck is upstream of machine m_i.

Simulation-based methods

d) The “turning point” method

Key concepts:

1. a bottleneck machine will often make the upstream machines blocked and

downstream machines starved.

2. a bottleneck machine will also have a lower overall sum of blockage and

starvation time.

Simulation-based methods

d) The “turning point” method

Simulation-based methods

e) machine production rate sensitivity analysis

the most critical bottleneck machine has the highest sensitivity value of the

system production rate to a machine’s production rate.

i.e.

system system

i j

PR PR

j i

PR PR

Increase the

production rate of

the potential

bottleneck with the

same percentage

Compare the

increase of system

production rate

from each round

Determine the

bottleneck which

leads the highest

system production

rate increase

Simulation-based methods

e) machine production rate sensitivity analysis

the most critical bottleneck machine has the highest sensitivity value of the

system production rate to a machine’s production rate.

Simulation-based methods

Pros:

✓ Easy to detect the bottleneck;

✓ Effective for large scale problems;

✓ It can handle stochastic systems;

Cons:

❖ Hard to see the rationale behind the results, it tells you “where” and

“what” but not “why”;

❖ Errors of simulation model can lead to wrong detection;

❖ It requires analytical support to draw the final conclusion in some

cases.

Resume our discussion about queues

1. How do we know the waiting time for the 10th part? 50th part? Or the nth

part?

2. How do we know the queue size at minute 50? Or minute 100? Or the

nth minute?

2mins 1min 8mins 4mins

Resume our discussion about queues

1. Mathematical induction

➢ The 2nd part: 6 mins

➢ The 3rd part: 3mins + 8mins

➢ The 4th part: 8mins + 8mins

➢ The 5th part: 5mins + 8mins + 8mins

➢ The 6th part: 2mins + 8mins + 8mins + 8mins

➢ The 7th part: 7mins + 8mins + 8mins + 8mins

➢ The 8th part: 4mins + 8mins + 8mins + 8mins + 8mins

What do you see from above? Can you conclude a generic formulation using

nth part, bottleneck cycle time T_b and part inter-arrival time T_a?

Resume our discussion about queues

When n=1

W_n=0;

When n>=2

W_n = W_(n-1) – T_a + T_b

Why?

Resume our discussion about queues

When n=1

W_n=0;

When n>=2

W_n = W_(n-1) – T_a + T_b

Why?

Resume our discussion about queues

Let’s change our angle

The nth part

Arriving at what

time makes it no

waiting?

What is the actual

arriving time?

Why the first one is different? – steady state analysis

Steady state:

In systems theory, a system or a process is in a steady state if the

variables which define the behaviour of the system or the process are

unchanging in time

1. Why do we need to exclude warm-up period?

2. How do we determine warm-up period?

Steady-state analysis

1. In a deterministic setting:

The system is deemed to show a repetitive pattern as long as the

simulation run is long enough.

2. In a stochastic setting:

The stochastic processes associated with the output variables of interest

become stationary.

o For example, if the inter arrival time of a part is following a Poisson

distribution or a normal distribution.

Steady-state analysis

Source from: Birta and Arbez (2013)

Steady-state analysis

✓ Selecting the size of the time cells (e.g. Every 5 minutes)

✓ Determine the total number of time cells

✓ Determine the number of replications

✓ Obtain the value as the average over the n replications of the i th cell

averages ( i.e. assuming i is the index for the i th cell and j is the index

for the j replication), then we have:

ia

,i jy

Steady-state analysis

Welch’s moving average method:

If plotted against index i, the resulting graph is ‘choppy’ and difficult to interpret

We introduce a smoothing operation to smooth out the rapid variations to

obtain a smoother curve that captures the long-run trend.

is a moving average value and parameter w represents a window

size that controls the smoothing operation.

( )ia w

Steady-state analysis

When i <= w, there

are not enough

values preceding

time cell I to fill the

window so we use (i-

1) replace w.

Steady-state analysis

ia (3)ia

(5)ia

The larger the window size, the smooth

plot you’ll get, but less details can be

captured.

Use Witness to help statistics

✓ Define random parameters

o E.g. Normal distribution syntax: normal(mean, SD, random stream);

Use Witness to help statistics

✓ Create and use variables

Use Witness to help statistics

✓ Create and use variables

Use Witness to help statistics

How do we define a time cell and continuously extract data to

Excel worksheet?

Use Witness to help statistics

✓ Use dummy parts and counter variable

Use Witness to help statistics

✓ Use dummy parts and counter variable

Use Witness to help statistics

✓ Corrected solution

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 4

Bottleneck analysis-4

University of Liverpool

Management School,

UK

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 6

Introduction to optimization

University of Liverpool

Management School,

UK

Key learning outcomes

1. Concept of optimisation

2. Use charts in Witness

3. Use advanced experimenter for obtaining optimal solutions

Improve bottleneck

Run the sample model from Week 5 to 1000 minutes

Where is bottleneck?

Improve bottleneck

Use pie chart to help find bottleneck

Go to Element States tab

Find your

target

element

Improve bottleneck

Create pie charts for all machines and run the model again

How do we interpret this result?

Improve bottleneck

See the demo on Witness for bottleneck analysis

Question:

Where is the end of our improvements?

How do we make such decisions in real world?

Optimisation

The field of “optimization” is concerned with how this process

can be quantitatively modelled, and, within the bounds of these

quantitative models, how the best decisions can be made.

▪ At the centre of every policy or planning decision are choices intended

to achieve one or more outcomes

▪ It is “the science of better.” This field is often known as operations

research, and has close ties with industrial or systems engineering.

Optimisation

What is an optimisation problem comprised of?

▪ An

objective function

: a single quantity to be either maximised or

minimised. E.g. the minimised costs, maximised safety etc.

▪ Decision variables: aspects of the problem that decision makers have

control over. E.g. number of machines, procurement frequencies etc.

▪ Constraints: Any kind of limitation on the values that the decision

variables they take. E.g. limited resources such as total amount of

budget, certain standards such as maintenance times, or some trivial

ones such as outputs can’t be negative.

A few examples

Example 1 – You have 60 feet of fence available, and wish to

enclose the largest rectangular area possible. What dimensions

should you choose for the fenced-off area?

Solution: The objective is clear from the problem statement: you wish to maximize the

area enclosed by the fence. The decision variables are not directly given in the problem.

Rather, you are told that you must enclose a rectangular area. To determine a rectangle,

you need to make two decisions: its length and its width. These are both decision

variables you can control directly, and there are no indirect decision variables because the

length and width directly determine its area. There is one obvious constraint — the

perimeter of the fence cannot exceed 60 feet — and two less obvious ones: the length and

width must be nonnegative. Since the length and width are independent of each other (the

perimetric constraint notwithstanding), there is no need to add a “consistency constraint”

linking them

A few examples

Simple mathematical formulation

L represents length

W represents width

Objective: max

𝐿,𝑊

𝐿𝑊

s.t. (subject to)

2𝐿

+

2𝑊 ≤ 60

𝐿,𝑊 ∈ 𝑅+

A few examples

Example 2 – Your company is selling A and B two products. Machine 1,

2, 3 are needed for processing them. Particularly, one final product A

needs M1 for 1 hour and M2 for 2 hours and one final product B needs M1

for 1 hour, M2 for 1 hour and M3 for 1 hour. M1 cannot be used over 300

hours per period, M2 cannot be used over 400 hours per period and M3

cannot be used over 250 hours per period. The market price for A is £50

and for B is £100. How do you plan your production per period to get the

best revenue?

Can you write the mathematical formulation?

A few examples

Answer:

𝑥1: number of A

𝑥2: number of B

Objective: max

𝑥1𝑥2

50𝑥1 + 100𝑥2

s.t.

𝑥1 + 𝑥2 ≤ 300

2𝑥1 + 𝑥2 ≤ 400

𝑥2 ≤ 250

𝑥1, 𝑥2 ∈ 𝑍

+

Optimisation

The next question is: how do we solve those problems?

Use experimenter in Witness to solve problem

Each A5 can be sold for £2000. A new M1-4 costs you £13000. Increasing

every 25% efficiency for M1-4 costs you £3800 and increasing the

efficiency for C1-C3 costs you £4000 per 10%. If you are given £30000 to

spend, how will you make your investment decisions?

Experimenter function

Investment decision on

machine efficiency

Investment decision on

conveyor efficiency

Effects of decision variables

Experimenter function

Auxiliary variables

used for

objective function and

constraints

Additional auxiliary variables

used for constraints

Experimenter function

Use function element to define

objective function

Experimenter function

Use advanced experiment mode

to find the optimal solution

Experimenter function

Add new parameters

Parameters: all associated decision variables + some

auxiliary variables

Constraints: conditions that limits your optimisation

Responses: your objective function

Minimum & Maximum: The range for your

decision variable

Step size: How do you change the value

when search for optimal in each scenario

Suggested: Initial search value for your

decision variable

Experimenter function

The full variable list

New machine decisions

Conveyor efficiency decisions

Machine efficiency decisions

Auxiliary variables

Experimenter function

Constraint: all spendings are no more than £30000

Coefficient for each variable

Constraint condition

Click “Add” after the below

information is populated

Experimenter function

Response: Function001

Since Function 001 is already

defined, so we just need to select it

as our objective function

You can also manually write your function in this box as well

Experimenter function

Run your solver

Make sure your objective function is

selected here

Click it to run

Experimenter function

Retrieve your solution

Red line shows the best optimal value and blue line shows

the actual objective value in each scenario

Click here for results

Solution set for each scenario

Final

Can you find the optimal solution for our Example 2

(Page 12) with Witness experimenter function?

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 6

Introduction to optimization

University of Liverpool

Management School,

UK

Dr. XINJIE XING

EBUS-5

0

4

Operations Modelling and Simulation

Vensim modelling and analysis

University of Liverpool

Management S

c

hool,

UK

Key Benefits of the ST/

SD

• A deeper level of learning

• Far better than a mere verbal description

• A clear structural representation of the

problem or process

• A way to e

x

tract the behavioral implications

from the structure and dat

a

• A “hands on” tool on which to conduct WHAT

IF

Stock and Flow Notation–Quantities

• STOCK

• RATE

•

Auxiliary

Stock

Rate

i

1

i

2

i

3

Auxiliary

o1

o2

o3

•

Input/Parameter/Lookup

• Have no edges directed toward them

• Output

• Have no edges directed away from them

i1

i2

i3

Auxiliary

o1

o2

o3

Stock and Flow Notation–Quantities

Inputs and Outputs

• Inputs

• Parameters

• Lookups

• Outputs

Input/Parameter/Lookup

a

b

c

Stock and Flow Notation–edges

• Information

• Flow

a b

x

Some rules

• There are two types of causal links in causal models

• Information

• Flow

• Information proceeds from stocks and

parameters/inputs toward rates where it is used to

control flows

• Flow edges proceed from rates to states (stocks) in

the causal diagram always

q1

q2

q3

q4

q

5

q

6

q

7

q

8

Causal loop example

q3

q6

q2

q7

q1

q4

q5 q8

System dynamic model equivalent –

EXAMPLE

Manual Simulation example

INVENTORY MANAGEMENT

Manual Simulation example

INVENTORY MANAGEMENT

Lets do the Maths!!

SCARED???

Manual Simulation example

INVENTORY MANAGEMENT

Lets do the Maths!!

SD to the rescue!!

SD

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

The SD Model

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

Information’s Patterns

Production

11

1 1

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

Information’s Patterns

Sales

5

3

13

2

0

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

The Maths

Inventory behaviour

Production-sales

=

30

(initial value)

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

The Maths

Period Production Inventory Sales

1

2

3

4

5

6

7

8

9

10

i = Period i

Inventory[i]

=

Inventory[i-1]+(Production[i-1]-Sales[i-1])

Inventory[1]

=

Inventory[0]+(Production[0]-Sales[0])

Inventory[1]

=

30+(0-0)

30

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

The Maths

Period Production Inventory Sales

0

1

2

3

4

5

6

7

8

9

10

i = Period i

Inventory[i]

=

Inventory[i-1]+(Production[i-1]-Sales[i-1])

1

1

1

11

11

11

1

1

1

1

30

31

32

24

32

40

28

48

36

34

0

0

5

3

3

3

5

13

2

2

Inventory[1]

=

Inventory[0]+(Production[0]-Sales[0])

Inventory[1]

=

30+(0-0)

30

1 233

Manual Simulation example – Lets do the

Maths

INVENTORY MANAGEMENT

Information’s Patterns

Inventory

30

31 32

24

32

40

28

48

36

34

Recall the after-class model from Lab 5

From the system description, the preliminary causal loop diagram can be

drawn as follows

Recall the after-class model from Lab 5

Question 2: Carefully analyse the results from the model. Check

production, workforce and inventory graphs. Are results correct? Is

there any fundemental error in the model? If so, what is it?

Vensim modeling for production management

without stockout

Question 2: Carefully analyse the results from the original model. Check

production, workforce and inventory graphs. Are results correct? Is

there any fundemental error in the model? If so, what is it?

– At some point during the horizon, inventory goes into negative

– However, this is not allowed according to the description

– Why inventory goes below zero?

Vensim modeling for production management

without stockout

Question 2: Carefully analyse the results from the model. Check

production, workforce and inventory graphs. Are results correct? Is

there any fundemental error in the model? If so, what is it?

– Why inventory goes below zero?

– Production cannot ramp up swiftly to match the sales increase

– You can observe sales graph increases stepwise, while

production graph increases gradually

– This is due to the fact that you need to hire new workers to

produce items and it takes 10 months to adjust workforce

How to prevent inventory to go below zero?

– Target production can be set to a value higher than sales

– Inventory coverage period can be imposed

– You may want to cover 3 months of inventory in your target production.

– Therefore;

– Target Inventory = Inventory coverage(3)* Sales

– Then you should obtain a set of new inventory amount which is

– (Target Inventory – Inventory)

– Asssume that you want inventory to be corrected in 2 months (Time to adjust

inventory)

– Therefore;

– Inventory correction = (Target Inventory – Inventory)/Time to adjust

invetory

– SO TARGET PRODUCTION SHOULD ACTUALLY BE:

– Target Production = Sales + Inventory correction

How to prevent inventory to go below zero?

Results for updated system dynamics model

Some typical examples – A Linear Graph

Source: Adapted from Maryland Virtual High School

A Linear Model

Problem Change in Y

Y

1 acceleration speed

2 weekly allowance savings

3 faucet output in gal/min volume of water in

bathtub in gal

Source: Adapted from Maryland Virtual High School

4. Graph the amount of radioactive material as it decays over time.

5. Graph the amount of money left in my son’s savings from his summer

job if his weekly spending is a fixed percentage of the money still in

his savings.

6. Graph the temperature of a cup of coffee as it cools to room

temperature.

How are these problems similar?

Source: Adapted from Maryland Virtual High School

Exponential Decay

Source: Adapted from Maryland Virtual High School

A Decay Model

Problem Change in Y Y

4 A fraction of the isotope radioactive isotope

5 A fraction of savings savings

6 A fraction of the

difference between

coffee and room

temperatures

coffee temperature

Source: Adapted from Maryland Virtual High School

7. Graph the number of burnt trees in a forest fire as trees are

transformed from living to burning to burnt.

8. Graph the number of immune people as people progress from being

healthy to being sick to recovering to become immune to the

disease.

How are these problems similar?

Source: Adapted from Maryland Virtual High School

Bounded Growth

Source: Adapted from Maryland Virtual High School

Transformation to Bounded Growth

Problem X Change in X Y Change in

Y

Z

7 Green

trees

Catch fire

rate

Burning

trees

Burnt out

rate

Burnt trees

8 Healthy

people

Get sick rate Sick

people

Recovery

rate

Immune

people

Source: Adapted from Maryland Virtual High School

9. Graph two populations, the predator and its prey, for a period of many

years.

10. Graph glucose and insulin levels during a day in which three meals are

eaten at regular intervals.

11. Graph the motion of a frictionless vertical spring.

How are these problems similar?

Source: Adapted from Maryland Virtual High School

Periodic Behavior

Source: Adapted from Maryland Virtual High School

Interdependence

Source: Adapted from Maryland Virtual High School

Interdependent stocks

• We can understand the industrial

environment as a set of stocks and

activities linked by flow of information

and flow of material, submitted to time

delays.

• For example, we can represent a

company as a set of aggregates

stocks.

Exercise

Consider a store where people enter, receive

some service, then move to the cash register

and have to wait in a checkout line before

they can pay

and leave.

Only one person can

be served at a time, and initially one person is

already at the service center being served. It

takes 5 minutes to be served and 1 minute to

get from the service center to the checkout

line. There are already 8 people waiting in the

checkout that last 2 minutes, and one person

is currently being served. One customer

arrives every 4 minutes and the first customer

arrives in the third minute after we began the

analysis

Identified beviours

• people enter,

• receive some service, then

• move to the cash register and

• have to wait in a checkout line before they can pay

and leave.

• Problems from different disciplines can be

represented by similar model structures.

(Goal 1)

• Graphing the expected output for a model can show

the expected model structure, including the variables

and the rates of change between variables.

(Goal 2)

• Each model structure has particular mathematical

relationships between its variables and their rates of

change.

(Goal 3)

What have we learned?

Dr. XINJIE XING

EBUS-504

Operations Modelling and Simulation

Vensim modelling and analysis

University of Liverpool

Management School,

UK

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 5

Use of variables and attributes

University of Liverpool

Management School,

UK

Key learning outcomes

1. What are variables and attributes?

2. Use variables and attributes under different scenarios

3. Use variables and attributes in Witness to improve your

model

Recall the definitions

Variables

Variables provide an abstraction for features of the model whose values typically change as the

model evolves over the course of the observation interval

Attributes

• Characteristic of all entities: describe, differentiate

• All entities have same attribute “slots” but different values for different entities, for example:

• Time of arrival

• Due date

• Priority

• Color

• Attribute value tied to a specific entity

• Like “local” (to entities) variables

• Some automatic in Arena, some you define

Recall the definitions

Variables Attributes

Independent Attached to one group of entities

Their values change as model evolves Each entity can have a collection of attributes

Information under one attribute remain unchanged

e.g. e.g.

Number of outputs the colour of your parts

Time to despatch a delivery the number of components for an assembly

Number of serviced customers/day the age of someone in 2020

A simple scenario

A simple scenario

, B3, B4

, B2, B4

, B2, B4

A simple scenario

A simple scenario

M1 Logic

A simple scenario

M2,3,4 Logic

A simple scenario

A simple scenario

Free set of questions

• Q1: How many parts have arrived from each kind?

• Q2: For how long they are in the

system?

• Q3: Which buffer holds the most of the parts?

• Q4: How long does each part wait in every buffer or conveyor?

• Q5: In average, how long does it take to generate one A5?

A simple scenario

A simple scenario

In the following example, an attribute will be created in order to

capture the arrival time from Part A2, A3, A4 to B2, B3 and B4.

Therefore, we will calculate how long a part a A2, A3, and A4 stay at

each buffer.

In order to calculate this time, three variables are going to be

created, which will capture this time.

In Witness, we use the internal variable TIME to know the exact time

of the simulation.

A simple scenario

Attr_A2_Time_in: attribute that captures the arrival time for A2 to

B2. In this case, at B2 Actions on input the following expression is

considered: Attr_A2_Time_in = Time

Remark: it will be the same for A3 and A4.

A simple scenario

A2_waiting, A3_waiting and A4_waiting are variables

representing the total waiting time for the most recent outputted A2,

A3, and A4 in their corresponding buffers.

At Actions on output in each buffer, we have:

A2_waiting = TIME – Attr_A2_Time_in

A3_waiting = TIME – Attr_A3_Time_in

A4_waiting = TIME – Attr_A4_Time_in

Why not attributes here?

A simple scenario

Run simulation to 1000 minutes

Proposed Exercise

1. Numbers of parts A1, A2, A3, A4, and A5 generated;

2. Time it takes to generate a part A5

3. How long does it take for the 100th A5 to be produced?

New scenarios

Company ABC purchases a group of white balls to produce different

final products. The purchasing will be done every 10 minute with

batch size 5 and there is 2 balls in initial stock. M1 can paint all the

white balls (one at a time and it costs 3 minutes) into three different

colours (blue, red and green). Then based on the colour of a ball, a

blue ball will be further processed by M2-M3 and red ball will be

further processed by M3-M4 and a green ball will be further

processed by M2-M4. All M2, M3, M4 are single machines with cycle

time 5 minutes.

How can we use variables and attributes to better simulate above

system?

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 5

Use of variables and attributes

University of Liverpool

Management School,

UK

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 1

Principles of

Simulation and modelling

University of Liverpool

Management School,

UK

Background of your lecturer

Dr. Xinjie (Daniel) Xing. Module leader – x.xing3@liverpool.ac.uk

o Senior lecturer in operations management (deputy director for BABD programme)

o PhD in operations research in maritime logistics

o Research interests lie in transport & logistics, sustainable supply chain, and

blockchain applications.

o Publications available at world leading journals such EJOR, TRE, IJOPM, ANOR etc.

o Leading a few (both internal and external) research projects in logistics and

blockchain fields.

Office hours: appointment by emails (email manners!!)

Email turnaround time: Three working days (i.e. exclude weekends and national holidays).

mailto:x.xing3@liverpool.ac.uk

Objective

Learning objective from this module

• Understand the dynamic nature of systems and their behavioural characteristics

• Understand a range of modelling analytical methods and their appropriate applications

• Understand how models are developed, tested and validated from real system

• Understand basic concepts of optimisation

• Be confident in use of commercially available tools (Witness, Vensim and Matlab)

Curriculum overview

• 1. Introduction to modelling and simulation and first look of Witness(wk1)

• 2. Process mapping techniques + Witness functions and advance rules (wk2)

• 3. Model state analysis + Bottleneck analysis (wk3)

• 4. Bottleneck analysis 2 and queues (wk4)

• 5. Use of variables and attributes (wk5)

• 6. Optimisation in Witness (wk6)

• 7. Introduction to linear programming and integer programming (wk7&8) (Matlab

application)

• 8.

System

dynamics (wk9-11) （Vensim application）

• 9. Revision week (wk12)

System

System

System

System

A collection of interacting entities that produces some form of

behaviour that can be observed over an interval of time (Birta

and

Arbez, 2013

).

It is inherently complex with high level of granularity.

Example of systems:

Tangible:

1. Transportation system

2. Power-generating system

3. Warehouse system

Intangible:

1. Health care system

2. Social systems

3. Economic systems

Modelling and simulation

Models and real world systems

Types of systems

A discrete system is one in which the state variables change

only at discrete or countable points in time.

✓ Customers arrives at different time points

✓ Car production scheduling

A continuous system is one in which the state variables change

continuously over time.

✓ The amount of water flow over a dam

✓ Vibration of materials

✓ Evaluation of radioactive decay

From system to modelling and simulation

1. Cost effective approach for analysis

It is always resource consuming to run the actual system for analysis purposes.

2. Simplification

A real system contains many branches and noises which cause difficulties for

understanding its key behaviours and logic.

3. Repetition

For various reasons, the run of a system cannot be slowed down or rewinded.

4. Hazards

Some systems are highly uncertain and hazards involved, which may not easy to be

observed or analysed directly.

Simulation and modelling

Simulation and modelling refer to a type of tools which helps to

gain insight into features of systems’ behaviours.

✓ A model is a representation or abstraction of the system under

investigation (the SUI)

✓ Normally computer-based but not always (manual simulation will be

discussed in later slides)

Role of modelling and simulation:

1. Comparison of control policy options;

2. Education and training;

3. Engineering design;

4. Evaluation of decision or action

alternatives;

5. Evaluation of strategies for

transformation or change;

6. Forecasting;

7. Prototyping and concept evaluation;

8. Risk/safety assessment;

9. Uncertainty reduction in decision

making;

Pros and Cons of simulation modelling

Advantages:

1. Cheaper to execute;

2. Alternative strategies for

dangerous scenarios;

3. Saves time;

4. Get away with anything morally or

ethically unacceptable (e.g.

assessing radiation dispersion);

5. Effective tool for something

irreversible (e.g. change of country

policy)

Disadvantages:

1. Inappropriate statement of goals

(project management);

2. Inappropriate granularity of the

model;

3. Ignoring unexpected behaviour;

4. Inappropriate mix of essential

skills;

5. Inadequate flow of information to

the client (big data management);

Building a Simulation Model

3. STRUCTURED

WALK-THROUGH

2. PROBLEM

FORMULATION

1. DATA AND

MODEL DEFINITION

6. VALIDATE

MODEL

5. PERFORM

PILOT

RUNS

4. BUILD MODEL

AND VERIFY

10. DOCUMENT AND

IMPLEMENT RESULTS

9. ANALYSE OUTPUT

DATA

8. MAKE PRODUCTION

RUNS

7. DESIGN

EXPERIMENTS

•Define goals, boundaries, and assumptions;

• Define concepts (entities, attributes, event list, etc…)

• Define interactions and relationships;

• Define data

Define your model

– Goals

What is the ultimate purpose of the SUI?

What are the key indicators of the SUI?

– Boundaries

The context of the model (geographical boundaries, physical

boundaries, timeframes etc.)?

What terminates the

model?

– Assumptions

Level of granularity

Effective simplification to achieve the goal

Goals, boundaries, and assumptions

System goals

• Objectives must be clear and specific and agreed upon.

• Some Examples of Objectives

o Identify the best design to meet output targets

o Identify the optimum number of operators/machines/vehicles etc. to use

o Maximise the utilisation of resources

o Identify the maximum output you can produce from a system

o Identify the main bottleneck resources

o How to improve performance of —–?

o What is the impact of changing ——-?

o Where is the waste in the system?

o Which of these scenarios do I adopt?

System Boundary

• Academic Institution

✓ Academic Department

✓ Academic Programme

✓ Computer Services Department

▪ Manufacturing Company

✓ Subsidiary

✓ Accounts Department

✓ Manufacturing System

✓ Materials Management

• Retail Sector

✓ One Shop

✓ Computer System

✓ Logistics

System

System

System

A group of

interrelated elements

operating to achieve

a goal.

Quick questions

• Why clear definitions of model goals are critical to modelling

projects?

• How does a model goal affect the future project

implementation?

• How does a model goal affect the boundary definition of a

model?

Pieces of a Simulation Model

• Entities

• “Players” that move around, change status, affect and are affected by other

entities

• Dynamic objects — get created, move around, leave (maybe)

• Usually represent “real” things

• Our model: entities are the parts

• Can have “fake” entities for modeling “tricks”

• Breakdown demon, break angel

Though Arena has built-in ways to model these examples directly

• Usually have multiple realizations floating around

• Can have different types of entities concurrently

• Usually, identifying the types of entities is the first thing to do in building a

model

Examples of entities

Birta and

Arbez, 2013

Data Collection

• Internal Documents

• Observations (Work Study)

• Survey data

o Internal: company specific

o External: Industry/Sector standards, Benchmarking

• Own Knowledge

• Interviews with experts

o Fact finding

o Problem identification

o Solution Review

Define your data

• Constant and parameters – serve simply as names for the values of features

or properties within a model which remain invariant over the course of any

particular experiment with the model

• Time and other variables – Variables provide an abstraction for features of

the model whose values typically change as the model evolves over the course of

the observation interval. Time is a special variable: (1) never depend upon any

other variables; (2) most other variables are dependent on time

• Input, state and output variables – Variables for defining the specifications

of the inputs, and outputs of the SUI and dynamic behaviors of different entities

within the SUI

Pieces of a Simulation Model

• Attributes

• Characteristic of all entities: describe, differentiate

• All entities have same attribute “slots” but different values for different

entities, for example:

• Time of arrival

• Due date

• Priority

• Color

• Attribute value tied to a specific entity

• Like “local” (to entities) variables

• Some automatic in Arena, some you define

Pieces of a Simulation Model

• Event

An instantaneous occurrence that changes the state of a system (such

as the completion of a service, or the arrival of an entity).

• Event notice

A record of an event to occur at the current or some future time, along

with any associated data necessary to execute the event; at a minimum

the record includes the event type and the event time.

• Event list

A list of event notices for future events, ordered by time of occurrence;

also known as the Future Events List.

Pieces of a Simulation Model

• Activity

A duration of time of specified length (e.g. a service time or inter-arrival

time), which is known when it begins (although it may be defined in

terms of a statistical distribution).

• Delay

A duration of time of unspecified indefinite length, which is not known

until it ends (e.g. a customer’s delay in a last-in-first-out waiting line

which, when it begins, depends on future arrivals).

• Simulation Clock

A variable representing simulated time.

Simulator Elements

Exercise

• Company ABC is a car parts supplier focusing on side panels and car floors. They

currently have 5 moulds and two ovens used for making panels. 3 different side panels

are being produced and each of them require different raw materials and production

processes. Both ovens are automatic and are associated with the same unit production

costs and unit carbon emission rate. All the panels need to be fully cooled down in a

cooling pool before they are split from moulds. Also, floor mats are being produced in

parrel by a different machine, but they share the same painting station with panels.

Some labours are required to do painting and setup oven. Each panel has its own

market price and they can also be bundled (and with floors) for different bundle prices

as well.

(a) Develop a list of possible goals for this model?

(b) Define the different data to be used by this model. (e.g. entities? Parameters?

Variables? Attributes? Events? Etc.)

Building a Simulation Model

3. STRUCTURED

WALK-THROUGH

2. PROBLEM

FORMULATION

1. DATA AND

MODEL DEFINITION

6. VALIDATE

MODEL

5. PERFORM

PILOT RUNS

4. BUILD MODEL

AND VERIFY

10. DOCUMENT AND

IMPLEMENT RESULTS

9. ANALYSE OUTPUT

DATA

8. MAKE PRODUCTION

RUNS

7. DESIGN

EXPERIMENTS

Model formulation and conceptual model

“Model formulation is the step where our knowledge of a natural system is

translated in mathematical form.” (Soetaert and Herman, 2009)

❖ It is primarily quantitative but can be supported with qualitative

descriptions;

❖ It is the first key document of modelling and simulation;

❖ Normally supported with charts and graphs;

❖ It helps to build the conceptual model

Conceptual Model is a refinement process that consolidates all relevant

structural and behavioural features of a SUI in a concise and precise

manner.

Examples of conceptual model and the corresponding

model formulation

Xing et al. (2022)

Example of conceptual model

Project-based learning process

Company ABC uses 5 moulds to produce side panels for its car manufacturer.

There are currently 2 automatic ovens are being used and side panel A, B, & C

need to be produced. Each side panel requires the use of different raw materials,

different heating time in ovens and each material has different procurement

settings. There are currently 3 labours working in the shopfloor to set up ovens

and split panels from moulds. All moulds need to be fully cooled down in cooling

before they are split and returned back to use. Side panels can be despatched

for sales after split process.

➢ Freely select your group members and your team can work on

this project together throughout the whole semester.

➢ New challenges will be added continuously.

➢ Part of the project results will be used for your final assessment.

✓ Beginning of your project

First look of Witness and build the first model for your

project

Please see separate slides for the intro of Witness.

✓ Build your first sample model

Panel type: A

Required materials: P1- coming every 4 mins with lot size 1 (and

one mould: no need at this moment!!)

Machines: Oven (configuration 3 mins, process time 5 mins), Split

(2 mins)

Buffers: Cooling and storages.

Labour: L1

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 1

Principles of Simulation and modelling

University of Liverpool

Management School,

UK

Dr. Daniel Xing(x.xing3@liverpool.ac.uk)

EBUS-504

Operations Modelling and Simulation

System Dynamic software: Vensim

University of Liverpool

Management School,

UK

mailto:x.xing3@liverpool.ac.uk

Menu and Tool Bar

Source: ®VENSIM 2012

Layout

Source: ®VENSIM 2012

MENU

• File : Open Model, Save, Print, dll.

• Edit : copy and paste, search, dll

• View : manipulating the sketch of the model and for viewing a model

• Layout : manipulate the position and size of elements in the sketch.

• Model : Simulation Control and the Time Bounds dialogs, the model

checking features, and importing and exporting datasets.

• Tools : sets Vensim’s global options and allows you to manipulate Analysis

tools

• Windows : to switch among different open windows.

• Help : provides access to the on-line help system.

Source: ®VENSIM 2012

Toolbar

Source: ®VENSIM 2012

Sketch

Tools

Lock — sketch is locked.

Move/Size — move, sizes and selects sketch objects: variables, arrows, etc.

Variable — creates variables ( Constants , Auxiliaries and Data).

Box Variable — create variables with a box shape (used for Levels or Stocks).

Arrow — creates straight or curved arrows.

Rate — creates Rate (or flow) construct

Model Variable — adds an existing model variable

Shadow Variable — adds as a shadow variable

Merge — merges two variables into a single variable, etc

Input Output Object — adds input Sliders and output graphs and tables to the sketch.

Sketch Comment — adds comments and pictures to the sketch.

Unhide Wand — unhides (makes visible) variables in a sketch view.

Hide Wand — hides variables in a sketch view.

Delete — deletes structure, variables in the model, and comments in a sketch.

Equations — creates and edits model equations using the Equation Editor.

Reference Modes — use to draw and edit reference models.

Source: ®VENSIM 2012

Tools

Source: ®VENSIM 2012

Tools

Source: ®VENSIM 2012

Tools

Source: ®VENSIM 2012

Analysis Tool Output

Source: ®VENSIM 2012

• Variable allows you to choose a variable in your model and select it as the

Workbench Variable.

• Time Axis allows you to change or focus the period of time over which

Analysis tools operate.

• Scaling enables you to change the scales of output graphs.

• Datasets allows you to manipulate the stored datasets (runs).

• Graphs brings up the Custom Graph Control.

• Placeholders is a control that sets Placeholder Values

Control Panel

Source: ®VENSIM 2012

Source: ®VENSIM 2012

Code behind the model

Source: ®VENSIM 2012

Operators

Source: ®VENSIM 2012

Example notation

Source: ®VENSIM 2012

Settings

Source: ®VENSIM 2012

Settings – iInfo/Psswd

Source: ®VENSIM 2012

Settings – Sketch

Source: ®VENSIM 2012

Settings – units

Source: ®VENSIM 2012

Dr. Daniel Xing(x.xing3@liverpool.ac.uk)

EBUS-504

Operations Modelling and Simulation

System Dynamic software: Vensim

University of Liverpool

Management School,

UK

mailto:x.xing3@liverpool.ac.uk

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-50

4

Operations Modelling and Simulation

Lecture

2

Process mapping techniques + Witness functions

University of Liverpool

Management School,

UK

Objective

Learning objective from today

• Understand different types of process mapping tools

• Witness:

✓ Displays and element details

✓ Buffers, machines, parts and conveyors

✓ Input and output rules

✓ Labours and configuration for setup

✓ Route function

Building a Simulation Model

3. STRUCTURED

WALK-THROUGH

2. DATA A

N

D

MODEL DEFINITION

1. PROBLEM

FORMULATION

6. VALIDATE

MODEL

5. PERFORM

PILOT

RUNS

4. BUILD MODEL

AND VERIF

Y

10. DOCUMENT AND

IMPLEMENT RESULTS

9. ANALYSE OUTPUT

DATA

8. MAKE PRODUCTION

RUNS

7. DESIGN

EXPERIMENTS

Process Mapping Techniques

• Graphical representation of how system components interact

• Describes the flow of information/material/jobs/documents etc.

• Tools for mapping

o Flowcharts

o Cross Functional Maps

o Gantt Charts

Process Mapping

ID Task Name Start End Duration

Oct 14 2001 Oct 21 200

1

14 15 16 17 18 19 20 21 22 23 24 25 26 2

7

1 4d 4h19/10/200115/10/2001Task 1

2 1d22/10/200119/10/2001Task 2

3 2d 4h17/10/200115/10/2001Task

3

4 1d 4h22/10/200119/10/2001Task 4

5 3d 4h26/10/200123/10/2001Task

5

STAR

T

Log Order

Receipt

Electronic

Record

Add to

queue

Select Next

in

Queue

Enough

F

T

Assemble

Order New

Stock

Log Order

Completed

Dispatch

END

Check

Stock

Proc. 1

Process name

D

e

p

.

B

D

e

p

C

D

e

p

.

D

D

e

p

.

A

Proc. 2 Check

Proc 4

Proc 5

Proc 7

Proc

6

(a)

(b)

Proc. 3

(shared)

(e)

(d)

(g)

(f)

(k)

(c)

(h)

(i)

(j)

Functional-based process

A1

A2

A3

B1

B2

B3 B4

C1

C2

C3

functional

Mixed Products

High utilisation of resources

Increased specialisation

Cross Functional Process Maps

Cross-functional charts are graphical maps that show how work is carried out in

an organisation. They show

Input/Output

Sequence

People, function or roles that perform each step

Process

input output

Decision

input

Option 1

Option 2

Cross Functional Process Maps

Proc. 1

Process name

D

e

p

.

B

D

e

p

C

D

e

p

.

D

D

e

p

.

A

Proc. 2 Check

Proc 4

Proc 5

Proc 7

Proc 6

(a)

(b)

Proc. 3

(shared)

(e)

(d)

(g)

(f)

(k)

(c)

(h)

(i)

(j)

Exercise

Applying to study at UoL

A student needs firstly to fill an application post with support documents. The filled

information will be passed to the admission office for automating a temporary student

ID. Once the ID is created, the applicant will be notified immediately and profile of this

ID will be sent to the associated course director for an application assessment. If the

course director rejects this student, a rejection letter will be created and it will also be

sent to the faculty office to update computer record. If this student is accepted, a copy

application will be generated for further consideration if all academic conditions are

met. If so, the course director will suggest an unconditional offer to the faculty office to

update the computer record. If not, the course director needs to specify what

conditions are further needed and this will also result in an update of computer

record

in the faculty office. Based on the computer record, the faculty office will decide

whether a conditional offer is needed for the applicant. If so, a conditional offer is

generated and it will also be replied to the student for further instruction. If not, an

unconditional offer is written and the applicant will be instructed to prepare for

enrolment.

Example: Applying To Study at Liverpool University

Applying To study at Liverpool University

U

A

O

C

o

u

rs

e

D

ir

F

a

c

u

lt

y

S

tu

d

e

n

t Fill

Application

Post with

support

Documents

enter

information in

computer

& generate ID

Write back to

student with ID

Assess

Appication

Accept

Write Rejection

letter

Copy

Application

Specify

Conditions

Satisfy

Cond.

Recommend

Un

conditional

offer

Write

Unconditional

Offer Letter

Update

Computer

record

Update

Computer

record

Inform

Faculty office

Prepare to

enroll

Conditional

Write

conditional

Offer Letter

Meet

Conditions

Y

N

N

Y

Y

N

Product-oriented Processes

product oriented

A1 B3 C2

A1 B4 C3

Product A

Product B

Reduction in

•Processing times (dedicated processes)

•Changeover

•WIP

•Transportation

GANTT Chart: Product-Based

Flow of parts in a cell or department with

duration of each activity

Example

Assume Parts A and B arrive to a cell with

a number of process M1,M2,

M3

Each part has the following routes

B 1 B A

M 1 A B A

B 2 B

M 2 A B A

B 3 B

M 3 A B

Bout A B

Time

0

1

0

2

0

3

0

4

0

5

0

6

0

7

0

8

0

9

1

0

1

1

1

2

1

3

1

4

1

5

1

6

1

7

1

8

1

9

2

0

2

1

2

2

2

3

2

4

2

5

2

6

2

7

2

8

M1

M2

M3B3

B2

B1

GANTT Chart: Product-Based

A M1 M2 B3 M3 M1 M2

B B1 M1 M2 B1 M1

C M2 M3 M2 M3

Time 0

1

0

2

0

3

0

4

0

5

0

6

0

7

0

8

0

9

1

0

1

1

1

2

1

3

1

4

1

5

1

6

1

7

1

8

1

9

2

0

2

1

2

2

2

3

2

4

2

5

2

6

2

7

2

8

• Variation on GANTT charts using Product as the

base line

• Example (Manufacturing Cell):

• A visits M1,M2,M3

• B visits M1,M2

• C visits M2,M3

• M1 and M2 processing time (5)

• M3 processing time (8)

M1

M2

M3B3

B2

B1

Example and exercise

M1

3mins

M2

5mins

Pa every

6mins

M1

3mins

M2

5mins

Pa every

6mins

Pb every

4mins

B1

M3

3mins

B2

M4

6mins

B3

Witness introduction part 2

1: Style

Graphic representation for any entities in Witness that is supposed to have an

animation movement (e.g. parts, labours). It can be description only or an Icon.

2: Icon (Monochrome)

Graphic representation for any entities in Witness in statically. It can be

customised with Editor function and a monochrome image can represent entity

states (use keys to see the meaning of different colours) later.

3: Part queues and labour queues

Presenting the location of your expected queues, built-up direction,

count and queue animation.

✓ Display types – displays can be created as many as you like for

one entity

Witness introduction part 2

✓ Based on the example from Witness Intro-1, create a state light

and a counter for your buffer

Witness introduction part 2

✓ Based on the example from Witness Intro-1, create a state light

and a counter for your buffer

You can

change the

font of your

counter

display here

Witness introduction part 2

✓ Based on the example from Witness Intro-1, create a state light

and a counter for your buffer

Why do we

have two part

queues?

Witness introduction part 2

1: A conveyor has length, movement time and capacity

▪ Length can be measured by part dimention.

▪ Indexed time: it specifies the amount of time it takes a part to move

through one part length of the conveyor.

2. Input and output rules (with position)

3. Use Shift and Control key to break a conveyor and bend a

conveyor.

✓ Conveyors

Witness introduction part 2

1:Pull from multiple places (pull from {position 1}, {position 2}, …)

• Flexible inputs

• Cannot define sequence

• Pull from next position if the former position is empty.

2. Sequence rule (sequence /failure_option location1, {location2}

{location3…}).

▪ Both flexible and strict sequence

▪ Quantity for each pull can be specified.

✓ Input from / output to multiple places

Witness introduction part 2

1:Push to multiple places (push to {position 1}, {position 2}, …)

• Easy manage but not good for overall utilisation

performance.

• Differentiate queues

2. Least/most parts (least/most parts|free location1 {, location2 …})

▪ Balanced queue

▪ Not consider different queue capacities

✓ Input from / output to multiple places

Witness introduction part 2

✓ Route function

Witness introduction part 2

✓ Route function

Witness introduction part 2

✓ Route function

Witness introduction part 2

✓ Route function

Witness introduction part 2

✓ Route function

Witness introduction part 2

✓ Route function

Witness introduction part 2

✓ Route function

Use Route tab to add stages

Define the details for each stage

Witness introduction part 2

✓ Route function

Dr. Daniel Xing

Email: x.xing3@liverpool.ac.uk

EBUS-504

Operations Modelling and Simulation

Lecture 2

Process mapping techniques + Witness functions

University of Liverpool

Management School,

UK