Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 168 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
168
Dung lượng
3,53 MB
Nội dung
MODELLING AND PLANNING OF MANPOWER
SUPPLY AND DEMAND
YIK JIAWEI
(B.Eng (Hons.), NUS)
A THESIS SUBMITTED
FOR THE DEGREE OF MASTER OF ENGINEERING
DEPARTMENT OF INDUSTRIAL & SYSTEMS
ENGINEERING
NATIONAL UNIVERSITY OF SINGAPORE
2010
ABSTRACT
Effective manpower planning is important and beneficial to a country’s
development. This project will focus on engineering manpower. Engineers are an
important part of the workforce, especially in Singapore where the drive is to
become a knowledge-based economy. In order to make effective manpower
policies, the system structure must be known so that system behaviour can be
understood. Unfortunately, such knowledge is difficult to obtain and hardly well
established. For this project, a hypothesis of the system structure is proposed and
validated. Potential policy levers are identified and scenario analyses are carried
out to understand the system behaviour. Artificial Intelligence tools are applied to
support the modelling process when parts of the system structure are unknown.
Fuzzy Expert System is applied to mimic decision policies and various forecasting
models. Using fuzzy logic, an attempt to find a decision policy that will enable
policy makers to fulfil their objectives is conducted.
i
ACKNOWLEDGEMENTS
I would like to thank the following people for making the thesis possible:
Assistant Professor Ng Tsan Sheng Adam and Associate Professor Dipti
Srinivasan, my supervisors, for their support, guidance and patience throughout
the course of the study
And everyone who has helped in one way or another
ii
CONTENTS
ABSTRACT
i
ACKNOWLEDGMENTS
ii
LIST OF TABLES
viii
LIST OF FIGURES
ix
CHAPTER 1 Introduction
1
1.1 Background
1
1.2 Problem Statement
2
1.3 Objectives
3
1.4 Scope of Study
4
1.5 Organisation of Thesis
5
CHAPTER 2 Literature Review
8
2.1 Perspectives related to Manpower Supply and Demand
8
2.1.1 Economics Perspective
8
2.1.2 Attractiveness Perspective
9
2.1.3 System Dynamics Perspective
2.2 The Human Factor
10
10
2.2.1 Traditional System Dynamics Method
10
2.2.2 Artificial Intelligence Tools
11
2.2.2.1 Fuzzy Expert Systems
12
2.2.2.2 Neural Networks
13
iii
2.2.2.3 Fuzzy Inductive Reasoning
2.3 Modelling: A Synthesis of Ideas
14
15
CHAPTER 3 Prototype Model
16
3.1 Hypothesis
18
3.1.1 Manpower Adjustment
18
3.1.2 Foreign Engineers
19
3.1.3 Resident Engineers
20
3.1.4 Engineer Education
22
3.1.5 Engineering Wage
22
3.1.6 Complete Causal Loop Diagram
23
3.2 Simulation Model
24
3.2.1 Key Assumptions
25
3.2.2 Model Validation
25
3.3 Scenario Analysis and Simulations
27
3.3.1 Employment Duration of Foreign Engineers
28
3.3.2 Hiring Rate of Foreign Engineers
31
3.3.3 Engineering College Admission Rate
34
3.4 Discussion and Analysis
38
3.5 Sensitivity Analysis
39
3.5.1 One Way Sensitivity Analysis
39
3.5.2 Monte Carlo Simulation
41
3.6 Conclusion
44
iv
CHAPTER 4 Application of Artificial Intelligence Techniques
4.1 Generic Supply Chain Model – Engineering College
Admission Rate
46
46
4.1.1 Simulation of Data
48
4.1.2 Inputs and Outputs of Fuzzy Expert System
48
4.1.3 Fuzzy Expert System – Membership Functions
49
4.1.4 Fuzzy Expert System – Rule Base
50
4.1.5 Optimisation and Calibration of Fuzzy Expert
System
50
4.1.6 Validation of Fuzzy Expert System
52
4.2 Fuzzy Expert System – Engineering College Admission
Rate
52
4.2.1 Output
54
4.2.2 Inputs
55
4.2.3 Membership Functions
56
4.2.4 Rule Base
56
4.2.5 First Estimate
57
4.2.6 Optimisation of Membership Functions
58
4.3 Discussion and Analysis
60
4.4 Traditional Forecasting Models using Fuzzy Logic
61
4.4.1 First Order Exponential Smoothing
62
4.4.2 Holt‟s Method
62
4.4.3 TREND Function
63
4.4.4 Fuzzy Forecasting Model
64
4.4.5 Calibration and Optimisation of Fuzzy
Forecasting Model
66
v
4.5 Conclusion
71
CHAPTER 5 Optimal Decision Policy using Fuzzy Logic
73
5.1 Decision Policy and Fuzzy Logic
73
5.2 Policy Lever and Objective
74
5.3 Fuzzy Policy Model
75
5.3.1 Output of Fuzzy Logic Controller
75
5.3.2 Input of Fuzzy Logic Controller
76
5.3.3 Membership Functions of Fuzzy Logic
Controller
76
5.3.4 Rule Base of Fuzzy Logic Controller
77
5.4 Calibration and Optimisation of Decision Policy Model
5.4.1 Discussion and Analysis
5.5 Performance of Fuzzy Decision Policy Model Under
Noise
78
83
84
5.5.1 Noise and Errors
85
5.5.2 Robustness of Fuzzy Decision Policy
Calibrated under Deterministic Setting
85
5.6 Improving the Robustness of Fuzzy Decision Policy
89
5.6.1 Results
89
5.6.2 Discussion & Analysis
92
5.6.3 Monte Carlo Simulation under Random Noise
93
5.6.4 Linear Programming
96
5.7 Conclusion
103
CHAPTER 6 Conclusion
106
6.1 Summary
106
vi
6.2 Contributions
111
6.3 Limitations
112
6.4 Suggestions for Future Research
113
REFERENCES
114
APPENDIX A: Stock-and-Flow Diagrams
117
APPENDIX B: Equations for Engineering Manpower Supply and
Demand Model (iThink)
121
APPENDIX C: One Way Sensitivity Analysis
129
APPENDIX D: Equations for Supply Chain (iThink)
132
APPENDIX E: Training Data Generated by Supply Chain Model
137
APPENDIX F: Membership Function Parameters for Fuzzy Expert
System (Supply Chain Model)
APPENDIX G: MATLAB Model of Engineering Manpower
Supply and Demand System
139
140
APPENDIX H: MATLAB Model of Fuzzy Expert System
144
APPENDIX I: Membership Function Parameters for Fuzzy Expert
System (Prototype Model)
145
APPENDIX J: Test Inputs for Fuzzy Forecasting Model
146
APPENDIX K: Engineering Manpower Demand Inputs
148
APPENDIX L: Model Out from Extreme Points (Ramp Input)
150
APPENDIX M: Simplified Model (Simulink)
151
APPENDIX N: MATLAB Code for LP Model
152
vii
List of Tables
Table 3.1 Key Model Parameters
25
Table 3.2 Low, Nominal and High Values for Key Model
Parameters
40
Table 4.1 Rule Base for Fuzzy Expert System (Supply Chain Model)
50
Table 4.2 Levels for Input and Output (Prototype Model)
56
Table 4.3 Rule Base for Fuzzy Expert System (Prototype Model)
56
Table 4.4 Rule base for fuzzy expert system - Forecasting Model
67
Table 4.5 RMSE between Fuzzy Forecasting Model vs. Traditional
Forecasting Models (Calibrated with Cyclical Input)
Table 4.6 RMSE between Fuzzy Forecasting Model vs. 1st Order
Information Delay (Calibrated with Different Inputs)
Table 4.7 RMSE between Fuzzy Forecasting Model vs. Holt‟s
Method (Calibrated with Different Inputs)
Table 4.8 RMSE between Fuzzy Forecasting Model vs. TREND
Function (Calibrated with Different Inputs)
69
70
70
70
Table 5.1 Rule base for fuzzy policy model
78
Table 5.2 Assumed Standard Deviation of Noise
85
Table 5.3 Maximum α for Fuzzy Decision Policy (Calibrated under
Deterministic Conditions)
87
Table 5.4 Assumed Standard Deviation of Noise
89
Table F.1 Optimised Membership Functions (Supply Chain Model)
Table I.1 Membership Function Parameters (1st Estimate, Prototype
Model)
Table I.2 Membership Function Parameters (Optimised, Prototype
Model)
viii
139
145
145
List of Figures
Figure 3.1 Simplified Representation of Engineering Manpower
System
17
Figure 3.2 Causal Loop Diagram for Manpower Adjustment
18
Figure 3.3 Causal Loop Diagram for Foreign Engineers
19
Figure 3.4 Causal Loop Diagram for Resident Engineers
21
Figure 3.5 Causal Loop Diagram for Engineer Education
22
Figure 3.6 Causal Loop Diagram for Engineering Wage
23
Figure 3.7 Complete Causal Loop Diagram
24
Figure 3.8 Comparison of Historical Number of Engineers vs.
Simulated Number of Engineers
Figure 3.9 Comparison of Historical Engineering Wage and
Simulated Engineering Wage
Figure 3.10 Average EP Engineer Employment Duration
(Decrement of 0.1 years)
Figure 3.11 Engineering Wage w.r.t variations in Average EP
Engineer Employment Duration
Figure 3.12 Leakage Fraction w.r.t variations in Average EP
Engineer Employment Duration
Figure 3.13 Resident Engineers w.r.t variations in Average EP
Engineer Employment Duration
Figure 3.14 Average Time Needed to Hire an EP Engineer
(Increments of 0.1 years)
Figure 3.15 Engineer Wages w.r.t variations in Average Time
needed to hire an EP Engineer
Figure 3.16 Leakage Fraction w.r.t variations in Average Time
needed to hire an EP Engineer
Figure 3.17 Number of Resident Engineers w.r.t variations in
Average Time needed to hire an EP Engineer
26
27
29
29
30
30
32
32
33
33
Figure 3.18 Engineering Manpower Demand (Ramp Increase)
35
Figure 3.19 Engineering Rate with varying levels of step change
35
Figure 3.20 Engineering Wage w.r.t variations in Engineering Rate
35
Figure 3.21 Number of Resident Engineers w.r.t variations in
Engineering Rate
36
ix
Figure 3.22 Number of Resident Jobseekers w.r.t variations in
Engineering Rate
36
Figure 3.23 Confidence bands for Resident Engineers
42
Figure 3.24 Confidence bands for EP Engineers
42
Figure 3.25 Confidence bands for Resident Jobseekers
43
Figure 3.26 Confidence bands for Engineering Wage
43
Figure 3.27 Confidence bands for Leakage Fraction
44
Figure 4.1 Supply Chain Model (Engineering College Admission
Rate)
47
Figure 4.2 Percentage Changes (First 200 data points)
49
Figure 4.3 Membership Functions for Fuzzy Expert System
(Supply Chain Model)
Figure 4.4 Fuzzy Expert System vs. Supply Chain Model
(Engineering Admission Rate)
Figure 4.5 Validation of Fuzzy Expert System vs. Supply Chain
Model
51
51
52
Figure 4.6 A Missing Link in Engineering Manpower Model
53
Figure 4.7 Hypothesis of inputs: Percentage change in demand
55
Figure 4.8 Membership Functions (First Estimate, Prototype
Model)
Figure 4.9 Simulated Engineering College Admission Rate vs.
Historical Engineering College Admission Rate
(Prototype Model)
57
58
Figure 4.10 Optimised Membership Functions (Prototype Model)
59
Figure 4.11 Simulated Engineering College Admission Rate vs.
Historical Engineering College Admission Rate (after
optimisation, prototype model)
60
Figure 4.12 Surface of Rule Base (Prototype Model)
61
Figure 4.13 Stock and Flow Diagram for First Order Exponential
Smoothing
62
Figure 4.14 Stock and Flow Diagram of Holt's Method
63
Figure 4.15 Stock and Flow Diagram for TREND Function
64
x
Figure 4.16 Fuzzy Forecasting Model
65
Figure 4.17 Input and Output to Fuzzy Logic Controller for Fuzzy
Forecasting Model
Figure 4.18 Fuzzy Forecasting Model vs. 1st Order Information
Delay (Calibrated with Cyclical Input)
Figure 4.19 Fuzzy Forecasting Model vs. Holt's Method (Calibrated
with Cyclical Input)
Figure 4.20 Fuzzy Forecasting Model vs. TREND Function
(Calibrated with Cyclical Input)
66
68
68
68
Figure 5.1 Fuzzy Policy Model
75
Figure 5.2 Membership Functions for Fuzzy Policy Model
77
Figure 5.3 Fuzzy Decision Policy Model
78
Figure 5.4 Normalised Ratio after Implementation of Fuzzy
Decision Policy (Ramp Input, RMSE)
Figure 5.5 Normalised Ratio After Implementation of Fuzzy
Decision Policy (Cyclical Input, RMSE)
Figure 5.6 Normalised Ratio after Implementation of Fuzzy
Decision Policy (Cyclical Ramp Input, RMSE)
Figure 5.7 Normalised Ratio After Implementation of Fuzzy
Decision Policy (Ramp Input, Worst Absolute Error)
Figure 5.8 Normalised Ratio After Implementation of Fuzzy
Decision Policy (Cyclical Input, Worst Absolute
Error)
Figure 5.9 Normalised Ratio After Implementation of Fuzzy
Decision Policy (Cyclical Ramp Input, Worst
Absolute Error)
Figure 5.10 Model Outputs from Extreme Points (Cyclical)
Figure 5.11 Output from Corner Points when Alpha = 0.2891
(Cyclical Input, Calibrated using RMSE)
Figure 5.12 Output from Corner Points when Alpha = 0.2969
(Cyclical Input, Calibrated using RMSE)
80
80
81
82
82
83
86
88
88
Figure 5.13 Optimisation Process under noise
90
Figure 5.14 Normalised Ratio for alpha =0, cyclical input
91
Figure 5.15 Normalised Ratio for alpha = 1.3359, cyclical input
91
Figure 5.16 Normalised Ratio for alpha = 1.41, cyclical input
92
xi
Figure 5.17 Monte Carlo Simulation under random noise without
any decision policy
94
Figure 5.18 Monte Carlo Simulations (Cyclical Input)
95
Figure 5.19 Instance of Model Output Exceeding Acceptable Range
(Cyclical Input)
95
Figure 5.20 Simplified Engineering Manpower Model
97
Figure 5.21 Monte Carlo Simulation using weights found from LP
Model and under random noise (beta distribution)
101
Figure 5.22 Model Output with no noise
102
Figure 5.23 Model output under random noise (Within acceptable
range)
Figure 5.24 Model output under random noise (Acceptable range
breached)
Figure A.1 Stock and Flow Diagram for Manpower Adjustment
Subsystem
Figure A.2 Stock and Flow Diagram for Job Vacancies Subsystem
Figure A.3 Stock and Flow Diagram for Wage Adjustment
Subsystem
Figure A.4 Stock and Flow Diagram for Resident Engineers
Subsystem
102
103
117
118
118
119
Figure A.5 Stock and Flow Diagram for EP Engineers Subsystem
120
Figure A.6 Stock and Flow Diagram for Engineering Education
Subsystem
120
Figure C.1 Average Resident Engineer Career Duration
129
Figure C.2 Average Resident Engineer Job Duration
129
Figure C.3 Average EP Engineer Employment Duration
130
Figure C.4 Average Time Needed to Hire a Resident Engineer
130
Figure C.5 Average Time needed to Hire an EP Engineer
131
Figure C.6 Percentage of EP Engineers to Resident
131
Figure E.1 Percentage Change in Resident Jobseekers
137
Figure E.2 Percentage Change in Resident Hiring Rate
137
xii
Figure E.3 Percentage Change in Resident Student Cohort
138
Figure E.4 Percentage Change in Engineering College Admission
Rate
138
Figure G.1 Manpower Adjustment Subsystem
140
Figure G.2 Job Vacancies Subsystem
141
Figure G.3 Wage Adjustment Subsystem
141
Figure G.4 Resident Engineers Subsystem
142
Figure G.5 EP Engineers Subsystem
143
Figure G.6 Engineering Education Subsystem
143
Figure H.1 MATLAB Model of Fuzzy Expert System
144
Figure J.1 Cyclical Demand
146
Figure J.2 Saw-tooth Demand
146
Figure J.3 Pulse Shape Demand
147
Figure J.4 Mixed Shape Demand
147
Figure K.1 Cyclical Input
148
Figure K.2 Cyclical Ramp Input
148
Figure K.3 Ramp Input
149
Figure L.1 Model Output from Extreme Points (Ramp Input)
150
Figure M.1 Simplified Model ( Simulink version)
151
xiii
Chapter 1
1.1
Introduction
Background
With the development of science and technology and the arrival of the knowledge
economy as part of an international economic structure, new challenges are
abound for effective human resources planning. At a national level, it is extremely
important to balance between manpower capital investment to nurture promising
citizens and also the execution of policies to bring in foreign expertise. Doing this
well will ensure a competitive advantage in this new economic era. This is
especially so for engineering manpower. With their unique skill set and talents,
engineers are an important component in the drive to become a knowledge
economy. Furthermore, for many countries, they are an important part of the
workforce in the traditional heavyweight industries like manufacturing.
Institutions of higher education (IHE) play an important role in the training of
engineers. However, given that IHE can only influence the supply side in the
engineering manpower market, their capacity to solve engineering manpower
shortages is very limited. Furthermore, for certain countries, recent trends indicate
an increasing number of engineering graduates choosing other professions outside
of their specialisation. This phenomenon may upset the best manpower planning
efforts of policy makers. Moreover, this “leakage” into other professions could be
due to various soft factors such as perceived wage equity between competing
1
2
professions, job prestige etc. Hence, it is clear that when looking at the
engineering manpower system, it is important to not only consider the economics
of demand and supply, but the social element as well.
1.2 Problem Statement
While the importance of the engineering manpower supply and demand is evident,
knowledge about the system structure is often lacking and insufficient.
Established economic models often neglect the complex interrelationships
between various factors or components. The lack of knowledge about the system
structure may lead to a flawed understanding about the system. This flawed
understanding can lead to fallacious manpower policies implemented by policy
makers and thus resulting in unwanted consequences for the economy and
citizenry. Hence, it is important to obtain a better understanding of the system
structure. Systems thinking is the process of understanding how things influence
each other within a whole. It is a framework for seeing interrelationships rather
than individual parts and for seeing patterns of change rather than static snapshots
or events (Senge, 1990). Systems thinking facilitates the understanding of
complex systems. System Dynamics is one tool to apply systems thinking.
The System Dynamics Society defines System Dynamics as a methodology for
studying and managing complex feedback systems, such as those in business,
economy and other social systems. System dynamics models are not immune from
forecast inaccuracies and potential misuses in decisions. However, the main utility
of such models is not precision forecasting, but for understanding and learning
system structure and policy design. According to Sterman (2000) , the purpose of
3
modelling is to eliminate problems by changing the underlying structure of the
system. The development of causal and simulation models can be done through
systems thinking (Senge, 1989, 1990; Anderson et al., 1997) and system dynamics
methodology (Forrester, 1961; Sterman 2000).
While it is possible to construct a model using the system dynamics method, the
method is dependent on expert knowledge for the elicitation of the system
structure and data for the calibration of the model. Thus, this may lead to
excessive development times as elicitation of information and sourcing for data
often requires a lot of time and resources. This can be a problem if there are time
constraints to the modelling project. To circumvent this problem and expedite the
modelling process, it is hoped that artificial intelligence techniques can be used to
either replace the part of the system where there is insufficient knowledge or to
model the human decision making process. However, this application of A.I.
techniques in system dynamics is relatively new and the research in the area is
somewhat limited.
1.3 Objectives
This project aims to build a prototype model of the engineering manpower supply
and demand system using a system dynamics approach. This prototype model will
take into account the market supply and demand dynamics as well as the human
aspects of supply and demand. It is hoped that through this prototype model, a
better understanding of the system structure can be achieved. Next, answers to
pertinent policy questions can be found. Some of these questions are:
4
Does the influx of foreign engineers depress local wages?
How does College Admission Rates affect manpower supply?
It is hoped that through better understanding and more knowledge about the
system, possible guidelines concerning manpower policies can be learnt.
Furthermore, A.I. techniques will be applied alongside the system dynamics
approach to evaluate their suitability in replacing parts of the model where there is
insufficient knowledge about the system or where human decision making is
required.
Good decision policies are difficult to formulate. Current methods of obtaining
such policies are also difficult to apply. Furthermore, when building a model,
especially when developing a rapid prototype, parameters and data are often rough
estimates to the actual values. Thus, if policies are to be designed under such
situations, the policies will have to be robust against ambiguity and uncertainty in
order to be useful. The ability of A.I techniques to synthesize a good and robust
decision policy and to hedge against uncertainty will be tested.
1.4 Scope of Study
For this study, a dynamic hypothesis of the system structure is first proposed. This
prototype model will be built using the traditional system dynamics approach. The
results from this prototype will then be compared with available historical annual
data. The annual data is from a certain Country X, which shall not be named due
to confidentiality issues. When unavailable, data or parameters needed in the
model are assumed if necessary. Simulations, sensitivity analysis and scenario
5
analyses can then be carried out to study the system behaviour and possibly
answer some of the questions raised.
Next, A.I. techniques will be applied to a section of the model where there is
insufficient knowledge about the system structure or human decision making is
required. The results will be tested and evaluated to see if A.I techniques can be
incorporated with system dynamics.
Lastly, A.I techniques will be applied to obtain a decision policy for the model.
This decision policy will be tested for effectiveness and also robustness to
uncertainty and noise.
1.5 Organisation of Thesis
The thesis consists of six chapters. The outline of the chapters is as follows:
Chapter 1 serves as an introductory text to the research project. The background
related to the research study is first described. Next, the related problem being
studied is stated. The objectives of the research project are then articulated. The
scope of the research work conducted is presented. Lastly, the organisation of the
thesis is outlined to inform the reader of the topics covered in the following
chapters.
In Chapter 2, a literature review of past related research work is conducted.
Manpower supply and demand is viewed from different perspectives. Then,
human behaviour within the system is studied. Lastly, prospective A.I. techniques
that can be applied are explored.
6
Chapter 3 deals with the building of a prototype model using a system dynamics
approach. Firstly, a hypothesis of the system structure is proposed. Then, the
hypothesis will be validated by the comparison of the results generated by the
prototype model and historical data. After this, scenario analyses and discussion
are carried out. The prototype model is then tested for its sensitivity to its assumed
model parameters.
In Chapter 4, an A.I technique is applied to help the modelling process. Fuzzy
expert system is used to replace the decision rule of a generic supply chain model
as a form of validation of the approach. Various attributes of the fuzzy expert
system are discussed. A particle swarm optimisation is carried out to obtain a best
fit with respect to historical data. Next, the same fuzzy expert system approach is
used to mimic a policy maker deciding the engineering college admission rate.
The results of the fuzzy expert system are then discussed and analysed. Lastly, the
chapter also attempts to use fuzzy logic to mimic the forecasting models
traditionally used in system dynamics methodology. A fuzzy expert system will
be applied to see whether it is able to replicate the behaviour and replace some of
the common forecasting models.
Chapter 5 builds on Chapter 4. An attempt to synthesise an optimal decision
policy using fuzzy logic was conducted. This decision policy will be based on a
hypothetical policy lever and should allow policy makers to achieve their policy
objectives while maintaining robustness to noise and uncertainty.
Chapter 6 presents a conclusion to the research project. A summary of the
research objectives, the activities carried out and the results obtained was
7
provided. The limitations faced by the study were discussed. Then, contributions
made by the research project were noted. Lastly, further research work pertaining
to the research project was suggested.
Chapter 2
Literature Review
This chapter reviews relevant work pertaining to the project. It covers the different
perspectives concerning manpower supply and demand, the human element within
the system and some possible A.I. techniques that can be applied.
2.1
Perspectives related to Manpower Supply and
Demand
2.1.1
Economics Perspective
Economists seek to explain the sufficiency of manpower in different sectors and
its effect on economic development and growth. Some of the common theories or
models are the Theory of Markets (Toutkoushian, 2005), Cobweb model
(Freeman, 1971, 1975, 1976), Growth Theories (Solow, 1956) and the Leontief
Input-Output Model (Brody, 1970).
The economics models on manpower supply and demand are extensively studied
and well established. Thus, they provide the basic framework of our
understanding and knowledge on the system. However, it should be noted that
most economic models fail to address adequately the regenerative loops that make
up an economic system (Forrester, 2003). Furthermore, most of the models based
on mathematical theory are not sophisticated enough to describe explicit solutions
to real world problems. Linearity is often assumed to model a system whose
essential characteristics arise from its non-linear properties. For reasons such as
8
9
these, most economic models are in fact inadequate to address our deepest and
most profound questions about the system. Also, economic theories and models
focus on the supply and demand for labour with equilibrium being determined by
hard facts such as wages and growth. They neglect to address the possible
interactions between individual actors in the system, for example students and
schools, graduating students and career choice, foreign workers and local
workforce etc. These interactions can be of specific interest to policy makers and
other stakeholders who wish to achieve their individual agenda.
2.1.2
Attractiveness Perspective
The attractiveness of a profession plays an important role in determining the
supply of manpower to the workforce. This is especially true for highly skilled
labour where the opportunity cost of training is high. The supply of manpower is
affected by two main factors, the retention of manpower and students joining the
labour pool.
Firstly, it is a widely accepted fact that higher wages result in lower worker
turnover and job mobility (Barth and Dale-Olsen, 1999). Next, a student‟s choice
of college major is essentially based on his perceived probability of success, the
predicted earnings of graduated students in all majors and the student‟s expected
earnings if he fails to complete the college program. (Montmarquette, Cannings
and Mahseredjian, 2002) It was also discovered that the impact of expected
earnings on choice of college major varies according to gender and race.
10
2.1.3
System Dynamics Perspective
Some system dynamics models for manpower supply and demand have been built
and can be used as a guide to the important parameters within the model. Park,
Yeon and Kim (2008) built a manpower planning model for the information
security industry of Korea. In their paper, they have built a hypothesized
manpower demand-supply system using system dynamics. They then tested
current manpower policies implemented in Korea. Following this, they analysed
the problem of imbalance in manpower supply and demand in the information
security industry. While they admitted to having neglected the quantitative aspect
of the model, they have managed to identify the likely trends caused by the
manpower policies. From this, they were able to provide better insight into the
structure of the manpower system and thus propose some solutions to the
problem.
2.2 The Human Factor
Humans are a very important element in any social system. However, because
humans display judgement and somewhat more sophisticated thinking, it is
difficult to incorporate human behaviour into any model.
2.2.1
Traditional System Dynamics Method
According to Sterman (2000), the structure of all models consists of two parts:
assumptions about the physical environment on one hand and assumptions about
the decision processes of the agents who operate in those structures on the other.
He defines the decision processes of the agents as the decision rules that
11
determine the behaviour of the actors in the system. These assumptions about
human behaviour will describe the way in which people respond to different
situations. Decision rules are the policies and protocols specifying how the
decision maker processes available information. They do not necessarily use all
available information, but use information according to the mental models of the
decision maker. The decision rules in a model embody assumptions about the
degree of rationality of the decision makers and decision making process, ranging
from simple-minded rules to total rationality.
This approach captures human decision making in a form of a table function.
However, this method is often unsatisfactory and depends a lot on the modeller‟s
judgement and experience. Furthermore, this method is not feasible and inaccurate
when the structure is partially or not understood.
2.2.2
Artificial Intelligence Tools
Artificial Intelligence (A.I.) has been defined as the study and design of intelligent
agents (Poole, Mackworth and Goebel, 1998). These intelligent agents should
ideally be able to perceive its environment and carry out necessary actions which
maximise its chances of success (Russell and Norvig, 2003). It may be interesting
to tap into existing A.I. tools to mimic human decision making in a system
dynamics model. Furthermore, it is possible to apply A.I. methods to substitute for
parts of the model where there is insufficient knowledge.
Modellers usually face two different types of uncertainties, namely “Parameter
Uncertainty” and “Structural Uncertainty”. Parameter Uncertainty is uncertainty
about the exact values of the parameters of the mathematical model describing the
12
system. This is especially so for complex systems where a modeller often have to
rely on incomplete and/or inaccurate data. Structural Uncertainty is uncertainty
about the structure of the system being modelled. This could be due to
stakeholders‟ reluctance to share their mental models and/or the structure is just
too complex that no one knows for sure how it looks. A modeller can try to
overcome this by proposing various hypotheses on the structure of the system.
However, this trial and error method is often time consuming and impractical.
A.I. presents a myriad of tools that can be solutions to the uncertainty problem.
Search and optimisation tools can be used to overcome parameter uncertainty by
allowing us to choose the best option in the solution space. Similarly, tools like
neural networks can be used to act as black boxes when a subsystem of the model
is not fully understood. Some of the relevant A.I. tools will be presented in more
detail in the subsequent subsections.
2.2.2.1
Fuzzy Expert Systems
An expert system is a computer system designed to mimic the problem solving
nature of a human expert. A heuristic is an educated guess based on experience
that simplifies and limits a search for solutions in applications which are poorly
understood. In general, a human expert uses a blend of heuristics, logic and
knowledge to solve a problem. Thus an expert system which mimics a human
expert will allow us to solve problems which are boggled down by uncertainty or
in situations where conclusions cannot be easily predicted (Gallacher, 1989).
The two main components of an expert system are the Knowledge Base and
Inference Engine. While an expert system has its uses and strengths, it is often
13
limited by its lack of „common sense‟. In other words, it is unable to recognise an
exceptional case or know when to bend the rules unlike a human expert. The
system closely models the way people perceives and reasons when faced with a
problem as people tend to think qualitatively rather than quantitatively.
Ghazanfari, Alizadeh and Jafari (2002) used Fuzzy Expert Systems as an
alternative method for the analysis of the causal loop in a system dynamics model.
They proposed the use of a fuzzy expert system to represent parametric
uncertainty in system dynamics models, especially human-related parameters
which have imprecise behaviours and cannot be stated precisely. Next, Kunsch
and Springael (2006) demonstrated the use of fuzzy reasoning techniques as a
means to aggregate external data from different sources with various credibility
levels driving the model. This was used to account for dynamic parameter
uncertainty within the model.
2.2.2.2
Neural Networks
Neural networks are software models inspired by biological neural networks.
Neural network models are built by using inductive techniques and thus need a lot
of data in order to train them correctly. Depending on the quality of the data, they
are able to simulate system behaviour rather accurately but do not require any
understanding from the modeller. As a result, a neural network model is most
useful where it is possible to specify the inputs and outputs but difficult to define
analytically a relationship between them (Nebot et al., 1995).
Neural networks have been shown mathematically to be universal approximators
(Cybenko, 1989). Furthermore, they are inherently non-linear (Wasserman, 1989)
14
and estimate non-linear systems well (White and Gallant, 1992). Hence neural
networks are able to overcome the limitations of tradition models such as linear
regression models. Thus when given sufficient hidden units, they will always find
a mapping between any set of independent and dependent variables. However,
this results in a significant disadvantage: Neural networks may find associations
in places where there are not (Ceccatto, Navone and Waelbroeck, 1997).
2.2.2.3
Fuzzy Inductive Reasoning
Fuzzy Inductive Reasoning (FIR) methodology is rather similar to neural
networks. It has the ability to model systems that are not well understood or where
the system‟s characteristics are not known. As it is an inductive method, FIR also
requires an adequate amount of data in order to train the model correctly. As with
neural networks, FIR does not allow the modeller to understand the underlying
system structure and adopts a „black-box‟ approach to the system it is modelling.
FIR is a qualitative technique and hence requires a data fuzzification step before
the model can be built.
A significant advantage that FIR methodology has over neural networks is that it
does not generate models that are not justifiable from the given data (Nebot,
Cellier and Linkens, 1995). FIR models contain information about the likelihood
of any particular state transition. This acts like an inbuilt model validation
mechanism such that forecasting by the model stops if the likelihood of a
particular state drops below a level specified by the modeller.
A new methodology using System Dynamics and Fuzzy Inductive Reasoning was
proposed by Moorthy et al. (1998) in their model used to predict U.S. food
15
demand in the 20th century. They proposed the use of FIR because it can be easily
embedded into System Dynamics models. Data for level variables are more
readily available than rate variables which are needed in model building using
traditional system dynamics methodology. Thus, FIR can be used to predict level
variables directly instead. This is a black box approach where the model predicts
each variable from past values without knowing the underlying relationships and
equations between them.
2.3 Modelling: A Synthesis of Ideas
Existing system dynamics and economics models on manpower planning have
been reviewed. It is possible to draw inspiration from them and to calibrate and
change these models to suit the purposes of the project.
Humans are very much a part of real world systems and human decision making
play a key role in the behaviour of such systems. Hence, modelling human
decision making is of paramount importance when building a model. Traditional
system dynamics method of modelling human decision making is somewhat
unrealistic and modelling the system itself is infeasible when there is insufficient
knowledge about the system. Artificial intelligence tools may aid us in our efforts
during such situations. Depending on the problem faced, different tools can be
applied for us to circumvent the problem. The application of A.I. tools shows a lot
of promise and potential in helping the modelling process become smoother or
more constructive.
Chapter 3
Prototype Model
This chapter details the building of the prototype model using system dynamics
methodology. A hypothesis of the system structure for engineering manpower
supply and demand is proposed and its results are compared with historical data.
Following this, various scenarios are envisaged and for each scenario, the system
behaviour is observed and analysed.
As the world develops, countries will be looking to become a knowledge
economy and engineers, as knowledge workers, will have a large role in this. Thus
to achieve this goal, governments have to ensure that there is a balance between
industry demand of engineers and the supply of engineers in the labour pool. This
would mean training sufficient engineers in local tertiary education institutions.
However, in recent years, there has been an increasing trend of engineering
graduates joining other professions. This phenomenon will lead to an imbalance
between supply and demand, where there are insufficient local engineers to meet
industry needs and foreign engineers would have to be brought in to fill in the
gap. A large influx of foreign engineers threatens the domestic social fabric and
raises public discontentment. Next, the resources used to train a “leaked” engineer
could have been put to more efficient use by training him/her in his final chosen
profession, instead of engineering. Moreover, engineering manpower planning
becomes even more delicate as it is difficult to predict the number of engineering
graduates becoming engineers. If there are too few engineering graduates in the
pipeline, then this increases the dependence on foreign engineers in the future and
exacerbates its associated problems. On the other hand, if there are too many
16
17
engineering graduates, then this is inefficient and the resources could have been
put to better use.
In light of the above problem and issues, it is important to understand the system
in order to arrest the potential consequences. However, the engineering manpower
system is complex, involving the interaction between many subsystems. The
Figure 3.1 shows a possible simplified representation of the engineering
manpower system. The system entails social, labour and education aspects.
Hence, systems thinking and systems dynamics will be used to make sense of this
complex system.
Figure 3. 1 Simplified Representation of Engineering Manpower System
18
3.1
Hypothesis
The hypothesised system structure can be explained using a causal loop diagram.
The diagram will be expanded incrementally as different market dynamics are
considered in the system.
3.1.1
Manpower Adjustment
The dynamics of engineering manpower adjustment between demand and supply
can be described as shown in the Figure 3.2.
Figure 3. 2 Causal Loop Diagram for Manpower Adjustment
Engineering Manpower Demand can be understood as the number of engineers
required by the market at a given point in time. This variable is assumed to be
exogenous in the model. Correspondingly, Engineering Manpower Supply is the
number of engineers which is employed at a given point in time. The Engineering
Manpower Gap is the difference between Engineering Manpower Demand and
Engineering Manpower Supply. This gap is interpreted as the shortfall/excess in
the number of engineers. Also, it is unrealistic to expect employers in the market
to be aware of the exact manpower gap at any given time. Hence, the variable
Perceived Manpower Gap is to model the difference between employers‟
perceived engineering manpower gap and the actual gap. Employers will act on
19
their perceived engineering manpower gap so as to adjust for manpower
accordingly to their needs. For example, when an employer thinks that he needs
more engineers, he will make the necessary adjustment to his company‟s HR
policies to hire more engineers. This adjustment for engineering manpower can
then be translated into the opening/closures of engineering Job Vacancies
available in the market.
3.1.2 Foreign Engineers
In an increasingly globalised work, the presence of foreign workers is becoming
more and more commonplace. This trend may have either beneficial or
detrimental effects for a local economy. Thus, it is important to include this
presence of Foreign Engineers in the system structure in order to study the
possible effects. The causal loop diagram including foreign engineers is as shown
in Figure 3.3.
Figure 3. 3 Causal Loop Diagram for Foreign Engineers
20
Note that Foreign Engineers are noted as EP Engineers in the diagram. EP means
employment pass, which foreign engineers are required to obtain before being
allowed to enter the labour pool. The two terms, Foreign Engineers and EP
Engineers, will be used interchangeably in this paper. From above, the number of
job vacancies will be filled by EP Engineers. The number of EP Engineers that is
hired depends on the Average Time Needed to Hire an EP Engineer. This can be
interpreted as the average amount of time needed by an employer to find a foreign
engineer to fill a job opening. If the average time is short, it is easy for employers
to fill a job opening with foreign engineers. Next, the number of EP Engineers
depends on the Average EP Employment Duration as the shorter the duration, the
higher the turnover rate amongst foreign engineers is. The number of EP
Engineers can be counted as part of the Engineering Manpower Supply. Also,
foreign engineers can choose to be assimilated into the local resident workforce
and become a resident. EP Engineers to Resident Engineer Fraction is the fraction
of foreign engineers who chooses to become resident engineers and EP Engineers
becoming Resident Engineers is the number of foreign engineers who chooses to
do so at a given point in time.
The first balancing feedback loop, the EP Engineer Hiring Loop (B1), in the
system can be seen in the diagram. It is a feedback loop that seeks to close the
engineering manpower gap by increasing the number of foreign engineers.
3.1.3 Resident Engineers
The indigenous labour pool is an important part of any manpower system. This is
no exception for engineering manpower.
21
Figure 3. 4 Causal Loop Diagram for Resident Engineers
Resident Engineers is the number of resident engineers currently employed in the
system. The number of resident engineers is a part of the Engineering Manpower
Supply. The number of resident engineers can be increased from two sources:
either Resident Jobseekers who found an Engineering Job or EP Engineers
becoming Resident Engineers. Resident Jobseekers can be defined as engineering
trained individuals who are looking for engineering jobs. Resident engineers can
choose to leave their jobs and join the Resident Jobseekers pool or they may reach
retiring age and leave the system entirely. The variables which control these are
Average Resident Engineer Job Duration which is the amount of time a resident
engineer stays in the same job before quitting and Average Resident Engineer
Career Duration which is the career length before a resident engineer retires. The
rate at which resident jobseekers become employed is dependent on the Average
22
Time Need to Hire a Resident Engineer. It has the same meaning as the case for
foreign engineers. As not all Resident Jobseekers looking for an engineering job
will eventually find one, they can be “leaked” out to other industries if they
choose to do so and hence the variable Leakage to other Professions.
It should be noted that there is a second balancing feedback loop. The Resident
Engineering Hiring Loop (B2) is a feedback loop that seeks to close the
engineering manpower gap by increasing the number of resident engineers.
3.1.4 Engineer Education
The resident jobseekers pool is supplemented by resident engineers who had left
their jobs or by fresh engineering graduates.
Figure 3. 5 Causal Loop Diagram for Engineer Education
The Engineering Rate is the admission rate of students per year into the
Engineering Student cohort. The engineering curriculum is usually four years and
thus there is a delay mark on the arrow to indicate this. The Graduating Students
will then join the Resident Jobseekers pool after graduation.
3.1.5
Engineering Wage
Employers may choose to adjust the wages for engineers according to their
perceived manpower gap.
23
Figure 3. 6 Causal Loop Diagram for Engineering Wage
The Engineering Wage is compared with Non-Engineering Wage. Depending on
how attractive the Engineering Wage is relative to Non-Engineering Wage, the
leakage to other professions will be affected. If Engineering Wage is very
attractive as compared to Non-Engineering Wage, then the leakage will be small.
The Engineering Wage Loop (B3) is the third balancing feedback loop observed
in the system. The loop serves to close the Engineering Manpower Gap by
increasing Engineering Wages and thus leading to less leakage. With less leakage,
the number of resident jobseekers increases.
3.1.6 Causal Loop Diagram
The complete causal loop diagram which incorporates all the sections above is
shown in Figure 3.7.
24
Figure 3. 7 Complete Causal Loop Diagram
3.2
Simulation Model
Based on the above hypothesis, a simulation model of the Engineering Manpower
Supply and Demand System was built on iThink. There are six subsystems and
they are:
Manpower Adjustment Subsystem (Figure A.1)
Job Vacancies Subsystem (Figure A.2)
Wage Adjustment Subsystem (Figure A.3)
Resident Engineers Subsystem (Figure A.4)
EP Engineers Subsystem (Figure A.5)
Engineer Education Subsystem (Figure A.6)
25
The detailed stock and flow diagrams for each subsystem can be found in
Appendix A. The equations and relationships between each variable used in
iThink can also be found in Appendix B.
3.2.1
Key Assumptions
Some of the key assumptions made are:
Engineering Manpower Demand, Engineering Rate and Non-Engineering
Wages are considered exogenous in the model.
Aggregation of engineers across different age groups, industries and pay
scales.
Source of foreign engineers is unlimited.
Model parameters are assumed when data is not available.
The key model parameters are shown in the Table 3.1.
Average Resident Engineer Career
Duration
Average Resident Engineer Job
Duration
Average EP Engineer Employment
Duration
Average Time Needed to Hire a
Resident Engineer
Average Time Needed to Hire a EP
Engineer
Percentage of EP engineers who
becomes Resident Engineer
45 years
6 years
3 years
2 months
6 months
10%
Table 3. 1 Key Model Parameters
3.2.2 Model Validation
Annual data for the number of Resident Engineers, EP Engineers, Engineering
Rate and Engineering Wage are available from 2000-2008. Using the model and
26
parameters as described above, the results from the model output can be compared
with the historical data from Country X.
The number of resident engineers, foreign engineers and amount of engineering
wage are compared in the Figures 3.8 and 3.9.
It is possible to observe that the simulated data follows the historical data trends
rather closely. Hence, the prototype model can be concluded to be somewhat
accurate on an aggregate level. A finer and more detailed model may be needed to
explain the smaller variations in historical data.
Number of Engineers
2000
2001
2002
2003
Simulated Resident Engineers
2004
Historical Resident Engineers
2005
2006
2007
Simulated EP Engineers
2008
Historical EP Engineers
Figure 3. 8 Comparison of Historical Number of Engineers vs. Simulated Number of
Engineers
27
Engineering Wage
2000
2001
2002
2003
2004
Simulated Engineering Wages
2005
2006
2007
2008
Historical Engineering Wages
Figure 3. 9 Comparison of Historical Engineering Wage and Simulated Engineering Wage
3.3
Scenario Analysis and Simulations
Policy levers are the variables which a policy maker has control over. Some of the
possible policy levers identified in the system are:
Employment duration of foreign engineers (regulation of contract duration
etc.)
Hiring rate of foreign engineers (regulation of hiring of foreign engineers
by making it easier or more difficult)
Engineering college admission rate (setting the number of students
admitted into engineering)
Different scenarios can be played out by varying these policy levers and observing
their effect on system behaviour.
28
3.3.1
Employment Duration of Foreign Engineers
The employment duration of foreign engineers is reflected in the model by the
variable Average Employment Duration of EP Engineers and was assumed to be
three years. Simulations where the Average Employment Duration of EP
Engineers is shortened are carried out. The effect on key variables is shown in
Figure 3.10 to Figure 3.13.
From the graphs, it can be observed that with a decrease in Average Employment
Duration of EP Engineers, the Engineering Wage increases, the Leakage Fraction
decreases, and the number of Resident Engineers increases.
Shortening the employment duration of foreign engineers decreases the number of
employed foreign engineers within the system as more are forced to leave while
the hiring rate of foreign engineers remain the same. This results in a larger
engineering manpower gap since the overall supply of engineers decreases. To
close this gap, employers will respond by increasing the wages of engineers to
attract more to join. Fewer resident engineers will be leaked to other industries
and will join the resident engineer stock as they are enticed by the increased pay.
29
Average EP Engineer Employment Duration
3.1
2.9
2.7
2.5
2.3
2.1
1.9
2008
2008.5
2009
2009.5
2010
2010.5
2011
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
2011.5
2012
Simulation 4
Figure 3. 10 Average EP Engineer Employment Duration (Decrement of 0.1 years)
Engineering Wage
2008
2008.5
2009
2009.5
2010
2010.5
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
2011
2011.5
2012
Simulation 4
Figure 3. 11 Engineering Wage w.r.t variations in Average EP Engineer Employment
Duration
30
Leakage Fraction
2008
2008.5
2009
2009.5
2010
2010.5
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
2011
2011.5
2012
Simulation 4
Figure 3. 12 Leakage Fraction w.r.t Variations in Average EP Engineer Employment
Duration
Resident Engineers
2008
2008.5
2009
2009.5
2010
2010.5
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
2011
2011.5
2012
Simulation 4
Figure 3. 13 Resident Engineers w.r.t Variations in Average EP Engineer Employment
Duration
31
3.3.2
Hiring Rate of Foreign Engineers
The hiring rate of foreign engineers is reflected in the model by the variable
Average Time Needed to hire an EP Engineer and was assumed to be six months
(0.5 years). Simulations where the Average Time Need to hire an EP Engineer is
lengthened are carried out. The effect on key variables is shown in Figures 3.14 to
3.17.
From the graphs, it can be observed that with an increase in Average Time
Needed to Hire an EP Engineer, the Engineering Wage increases, the Leakage
Fraction decreases, and the number of Resident Engineers increases.
A slower hiring rate decreases the number of employed foreign engineers within
the system as less join the stock of foreign engineers in the same period of time.
This results in a larger engineering manpower gap since the overall supply of
engineers decreases. To close this gap, employers will respond by increasing the
wages of engineers to attract more to join. Fewer resident engineers will be
leaked to other industries and will join the resident engineer stock as they are
enticed by the increased pay.
32
Average Time needed to hire an EP Engineer
1
0.95
0.9
0.85
0.8
0.75
0.7
0.65
0.6
0.55
0.5
2008
2008.5
2009
2009.5
2010
2010.5
2011
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
Simulation 4
Simulation 5
2011.5
2012
Figure 3. 14 Average Time Needed to Hire an EP Engineer (Increments of 0.1 year)
Engineering Wage
2008
2008.5
2009
2009.5
2010
2010.5
2011
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
Simulation 4
Simulation 5
2011.5
2012
Figure 3. 15 Engineer Wages w.r.t variations in Average Time needed to hire an EP
Engineer
33
Leakage Fraction
2008
2008.5
2009
2009.5
2010
2010.5
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
Simulation 4
Simulation 5
2011
2011.5
2012
Figure 3. 16 Leakage Fraction w.r.t variations in Average Time needed to hire an EP
Engineer
Resident Engineers
2008
2008.5
2009
2009.5
2010
2010.5
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
Simulation 4
Simulation 5
2011
2011.5
2012
Figure 3. 17 Number of Resident Engineers w.r.t variations in Average Time needed to hire
an EP Engineer
34
3.3.3
Engineering College Admission Rate
The Engineering College Admission Rate is reflected in the model by the variable
Engineering Rate. During the model validation phase, the Engineering Rate was
assumed to be exogenous and set using annual historical data.
For the scenario analysis, it is assumed that the Engineering Manpower Demand
increases with a ramp increase of 5000/year for six years (from 2009 to 2015).
During this period, varying levels of step changes are implemented to the
Engineering Rate in order to observe the effects on system behaviour. The levels
of step increase for each simulation are detailed as follows:
Simulation 1: Step Increase of 5000 in Engineering Rate to match the
increase in Engineering Manpower Demand.
Simulation 2: Step Increase of 2500 in Engineering Rate to match half the
increase in Engineering Manpower Demand.
Simulation 3: Step Decrease of 1250 in Engineering Rate to see the effects
of decreased supply.
Simulation 4: Step Decrease of 2500 in Engineering Rate to see the effects
of decreased supply.
The effect on key variables is shown in Figures 3.18 to 3.22.
35
Engineering Manpower Demand
2008
2013
Base Scenario(No Change)
Simulation 3
2018
2023
Simulation 1
Simulation 4
2028
Simulation 2
Figure 3. 18 Engineering Manpower Demand (Ramp Increase)
Input Engineering Rate
2008
2013
Base Scenario(No Change)
Simulation 3
2018
Simulation 1
Simulation 4
2023
2028
Simulation 2
Figure 3. 19 Engineering Rate with varying levels of step change
Engineering Wage
2008
2013
Base Scenario(No Change)
Simulation 2
Simulation 4
2018
2023
Simulation 1
Simulation 3
2028
Figure 3. 20 Engineering Wage w.r.t variations in Engineering Rate
36
Resident Engineers
2008
2013
2018
2023
Base Scenario(No Change)
Simulation 1
Simulation 2
Simulation 3
2028
Simulation 4
Figure 3. 21 Number of Resident Engineers w.r.t variations in Engineering Rate
Resident Jobseekers
2008
2013
Base Scenario(No Change)
Simulation 2
2018
2023
Simulation 1
2028
Simulation 3
Simulation 4
Figure 3. 22 Number of Resident Jobseekers w.r.t variations in Engineering Rate
From the graphs, it can be observed that the effects of changing the engineering
college admission rates only occurred after approximately four years. Increasing
the engineering college admission rate above the base scenario had no effect on
37
the engineering wage while decreasing the engineering college admission rate
increases the engineering wage. The number of resident engineers increases as the
engineering college admission rate increases. However, there is no difference
between the number of resident engineers in simulations 1 and 2. This suggests
that increasing the engineering college admission rate will only increase the
number of resident engineers up to a certain extent. Next, the number of resident
jobseekers increases as the engineering college admission rate increases. It should
be noted that while simulations 1 and 2 have no difference in the number of
resident engineers and engineering wage, the number of resident jobseekers is
vastly more for Simulation 1 than for Simulation 2. Hence, it may be concluded
that, after a certain extent, increasing the engineering college admission rate will
only increase the number of resident jobseekers. Also, the number of resident
jobseekers continued to increase even after the increase in engineering college
admission rate is discontinued.
The engineering college admission rate ultimately controls the stock of resident
jobseekers looking for engineering jobs within the system. When there is a
shortage of resident jobseekers looking for engineering jobs, employers will
respond by increasing the engineering wages in the short term. However, if this
shortage is persistent, they will have to resort to hiring foreign engineers to plug
the shortage.
38
3.4
Discussion and Analysis
The results from the scenario analyses can be analysed from two policy aspects,
namely Manpower policies and Education policies.
Firstly, by retarding the hiring rate of foreign engineers (i.e. increasing the
Average Time Needed to Hire an EP Engineer) or shortening the duration a
foreign engineer can work locally (i.e. decreasing the Average EP Engineer
Employment Duration), the engineering wage and proportion of resident
engineers in the engineering labour force increases. Leakage to other industries
also decreases. This indicates the possibility that an excessive influx of foreign
engineers does indeed depress the wages of local engineers and hence making the
profession less attractive. This may be further accentuated if the foreign engineers
draw a lesser wage. Furthermore, if this is true, the long term technical ability of
the resident population may be lowered due to the decreased attractiveness of
engineering. Hence, it is important to balance the need for foreign engineers to
supplement the local supply of engineers and also the long term survivability and
attractiveness of the engineering profession amongst residents.
Secondly, it can be observed that the engineering college admission rate should
not be set by simply matching the increase in engineering manpower demand as
this would lead to excessive inefficiency (i.e. too many resident jobseekers). Also,
there is a need to take into account the delay and pipeline effects as changes in the
engineering college admission rate today will not affect the system until several
years later. Thus, there is a need to strike a balance between increasing the
number of resident engineers and also decreasing the number of resident
39
jobseekers. One possible action going forward could be to identify the factors that
should be considered when setting the engineering college admission rate.
Following this, possible policy guidelines could be created so as to decrease
unemployment while as the same time matching the demand for engineers.
Although it is plausible that the observations made above are true and realistic, it
is also true that the prototype model suffers from a lack of historical data. With
only data from 2000-2008 available, it is difficult to conclude that the model is
accurate for the more distant past and that it is able to simulate possible events
confidently into the future. Next, the prototype model is an aggregate model of all
engineers across age groups, industries, job positions and pay scales. It is possible
that the system behaviour may differ on more granular level. Similarly, results
from a more in-depth model may be even more pertinent for policy makers to
micromanage the different industries or types of engineers. Hence, it should be
noted that this prototype model is merely a work-in-progress and should be
improved upon by interested individuals.
3.5
Sensitivity Analysis
Due to the number of key model parameters assumed in the model, it is essential
to carry out sensitivity analysis on them so as to validate the assumed parameters
and the associated system behaviour.
3.5.1
One Way Sensitivity Analysis
A One Way Sensitivity Analysis is first carried out by varying the key model
parameters between high and low values one at a time while keeping the rest of
40
the model constant at their nominal values. The Table 3.2 shows the low, nominal
values for each of the key model parameters.
Low Value
Average Resident
Engineer Career
Duration
Average Resident
Engineer Job
Duration
Average EP
Engineer
Employment
Duration
Average Time
Needed to Hire a
Resident
Engineer
Average Time
Needed to Hire a
EP Engineer
Percentage of EP
engineers who
becomes Resident
Engineer
42.5 years
3 years
2 years
1 month
3 months
5%
Nominal Value
45 years
6 years
3 years
2 months
6 months
10%
High Value
47.5 years
9 years
4 years
4 months
9 months
20%
Table 3. 2 Low, Nominal and High Values for Key Model Parameters
The graphs for Resident Engineers, EP Engineers, Engineering Wage, Leakage
Fraction and Resident Jobseekers are plot for all six key model parameters, using
the different values in the sensitivity analysis. These graphs can be found in
Appendix C.
Some observations that can be made from the graphs are:-
Some parameters are more sensitive than others and affect more aspects of
the results
41
-
Average Time to Hire a EP Engineer and Average Time to Hire a Resident
Engineer affects both the composition of the labour force (i.e. the number
of resident engineers and foreign engineers) and the labour market in
terms of Engineering Wage and Leakage Rate.
-
Other parameters only affect the composition of the labour force.
-
Average Resident Engineer Career Duration is insensitive within the
defined range.
For system dynamics models, a One Way Sensitivity Analysis is not necessary the
best way for sensitivity analysis as the models are usually non-linear. Hence it is
entirely possible that the model may vary more strongly within the defined range
of values than at the defined extremes. For this reason, a Monte Carlo sensitivity
analysis is carried out to determine the confidence intervals of the prototype
model.
3.5.2 Monte Carlo Simulation
For the Monte Carlo simulation, the key model parameters are assumed to be
uniformly distributed between the ranges shown in Table 3.2. This is because the
parameters are usually bounded and their actual distribution unknown. A total of
two thousand simulations were carried out. The 50%, 75% and 95% confidence
bands for Resident Engineers, EP Engineers, Engineering Wage, Leakage
Fraction and Resident Jobseekers are shown in Figures 3.23 and 3.24.
42
Figure 3. 23 Confidence bands for Resident Engineers
Figure 3. 24 Confidence bands for EP Engineers
43
Figure 3. 25 Confidence bands for Resident Jobseekers
Figure 3. 26 Confidence bands for Engineering Wage
44
Figure 3. 27 Confidence bands for Leakage Fraction
From the above graphs, it can be observed that Resident Engineers and EP
Engineers are more sensitive to changes in the key model parameters. Next, there
is less uncertainty about the Resident Jobseekers, Leakage Rate and Engineering
Wage as they have much smaller confidence bands. Despite the uncertainty in the
variables, the general trends in the system behaviour for each of the variable are
somewhat regular and do not change. This shows that the system behaviour is
insensitive to changes to the assumed key model parameters.
3.6 Conclusion
In this chapter, a hypothesis for the Engineering Manpower Supply and Demand
system was proposed and described. A prototype model based on the hypothesis
was built. The prototype model was validated using historical data.
45
Next, scenario analyses were carried out for some identified policy levers. The
possible impacts were observed and analysed. Policy considerations concerning
these impacts and policy levers were discussed.
A One Way Sensitivity Analysis and Monte Carlo simulation were carried out to
determine the sensitivity of the system to changes in the assumed key model
parameters. It was found that the general behaviour of the prototype model is
insensitive to changes in the key model parameters.
Chapter 4
Systems
Dynamics
Modelling
with A.I. techniques
In this chapter, A.I. tools will be applied in order to aid the modelling process. In
many situations, there is neither information nor data on parts of the model
structure. For instance, in the engineering manpower planning model, the
structure determining the supply of engineers is unknown. Thus, in this chapter,
fuzzy logic is proposed as a way to imitate decision policy. First, the method is
tested on a simple text book example. Next, the same technique is applied on the
engineering manpower case study. Lastly, fuzzy expert systems will be tested for
its ability to replace forecasting models.
4.1
Generic Supply Chain Model – Engineering College
Admission Rate
A generic system dynamics supply chain model was adapted to simulate the
decision rule for the engineering college admission rate. The model is shown in
Figure 4.1. The equations used in the model can be found in Appendix D. The
rectangle in the figure shows the decision rule of the supply chain model. The
goal is to replace this rectangle entirely with a fuzzy expert system.
47
Decision Rule
Figure 4. 1 Supply Chain Model (Engineering College Admission Rate)
From Figure 4.1, the inputs of the decision rule are:
Resident Hiring Rate
Resident Jobseekers
Engineering Student Cohort
The output is the Engineering Admission Rate. Percentage changes will be used in
order to ensure that the fuzzy expert system is robust in relative terms. The
number of Job Vacancies is considered to be exogenous and is a proxy to the
engineering manpower demand.
48
4.1.1
Simulation of Data
Since engineering manpower demand is not prone to strong variations, its
percentage change can be assumed to be between -10% and 10%. Hence, the
percentage change in Job Vacancies was assumed to be uniformly distributed
within this range. A hundred random disturbances was generated and applied to
the system. System behaviour in response to different disturbances to the system
can then be observed.
4.1.2
Inputs and Outputs of Fuzzy Expert System
Out of the hundred random disturbances, the data points corresponding to the first
ninety disturbances will be used for the calibration of the fuzzy expert system.
The Figure 4.2 shows the percentage changes in the inputs and output for the first
two hundred data points. Note that the sign of percentage change in resident
jobseekers was changed so as to have the same sign for all inputs and outputs. The
percentage change in Engineering Admission Rate correlates well with the three
inputs. Figures for the entire training data can be found in Appendix E.
49
40
30
20
10
0
0
50
100
150
200
-10
-20
-30
negative %Change (Resident Jobseekers)
%Change (Resident Hire Rate)
%Change (Engineering Admission Rate)
%Change (Resident Student Cohort)
-40
Figure 4. 2 Percentage Changes (First 200 data points)
Only the percentage change in resident jobseekers and resident hiring rate will be
used as inputs to the fuzzy expert system so as not to double count certain
influences on system behaviour.
4.1.3
Fuzzy Expert System - Membership Functions
The inputs and output are separated into different levels as follows:
%Change in Hiring Rate: Negative, Mild, Positive
%Change in Resident Jobseekers: Negative, Mild, Positive
%Change in Engineering Admission Rate: Large Negative, Negative,
Mild, Positive, Large Positive
50
There are five levels for the percentage change in engineering admission rate
because it tends to swing wildly at the beginning of every disturbance. Thus, to
simulate this behaviour, an extra level is most likely required.
4.1.4
Fuzzy Expert System - Rule base
There are nine rules as shown in the Table 4.1.
%Change in
Jobseekers
%Change
Negative
Mild
Positive
Negative
Large Negative
Mild
Mild
Mild
Negative
Mild
Positive
Positive
Mild
Mild
Large Positive
In Hiring Rate
Table 4. 1 Rule Base for Fuzzy Expert System (Supply Chain Model)
4.1.5 Optimisation and Calibration of Fuzzy Expert System
Particle Swarm Optimisation (PSO) is used to calibrate the fuzzy expert system.
The following membership functions in Figure 4.3 were obtained. The
membership function parameters can be found in Appendix F. The engineering
college admission rate generated by the fuzzy expert system and the supply chain
model are compared in Figure 4.12. The RMSE is 29.9 and the percentage RMSE
is 5.6%.
51
Figure 4. 3 Membership Functions for Fuzzy Expert System (Supply Chain Model)
Engineering Admission Rate
1000
900
800
700
600
500
400
300
200
0
200
400
600
800
Fuzzy Engineering Rate
1000
1200
1400
1600
Simulated Engineering Rate
1800
Figure 4. 4 Fuzzy Expert System vs. Supply Chain Model (Engineering Admission Rate)
52
4.1.6
Validation of Fuzzy Expert System
The last remaining ten random disturbances will be used to validate the fuzzy
expert system‟s ability to replicate the decision rule. The Figure 4.5 shows the
engineering college admission rate generated by the fuzzy expert system
compared with the values generated by the supply chain model.
800
Engineering Admission Rate
750
700
650
600
550
500
450
400
0
50
100
150
200
Engineering Admission Rate
Fuzzy Engineering Admission Rate
Figure 4. 5 Validation of Fuzzy Expert System vs. Supply Chain Model
The RMSE is 25.1 and the percentage RMSE is 4.4%. Thus the fuzzy expert
system is able to replicate the decision rule of the supply chain model rather
accurately.
4.2
Fuzzy Expert System– Engineering College Admission Rate
In the prototype model, the engineering college admission rate was assumed to be
exogenous. This is because there was insufficient knowledge about the
53
relationships between engineering college admission rate and the rest of the
system.
?
Figure 4. 6 A Missing Link in Engineering Manpower Model
Despite the lack of knowledge, it is possible to try making it endogenous through
certain A.I. tools. FIR methodology and neural network models are some
techniques that can be considered. However, this would result in a “black box”
where the system structure behind the engineering college admission rate remains
a mystery. Thus, a fuzzy expert system will be applied. A fuzzy expert system has
been shown in the previous Section 4.1 to be able to replicate a decision policy
well.
The fuzzy expert system will have to mimic a policy maker setting the
engineering college admission rate. Due to the nature of the approach, a set of
rules regarding the policy maker‟s decision making process will have to be
54
proposed. If a set of rules that allows us to satisfactorily recreate the engineering
college admission rate exists, it is plausible that this set of rules is actually
reflective of the policy maker‟s mental model. Thus, the fuzzy expert system
actually allows the possible discovery of unknown information about the system.
There are a few aspects to consider when implementing the fuzzy expert system:
The outputs of the fuzzy expert system – What is the output and how does
it relate to the rest of the system?
The inputs into the fuzzy expert system – What are the factors to consider
when setting the engineering college admission rate?
The membership functions – How to interpret the level or intensity of a
given factor and what is the range for this level?
The rule base – How does the different levels for each factor interact to
give an output?
In order to apply A.I. tools, the model will have to be reconstructed in MATLAB.
The diagrams of the model in MATLAB can be found in Appendix G. The
MATLAB model is verified to have similar performance to the original model
4.2.1
Output
The output of the system is the percentage change in engineering college
admission rate. Percentage change is used so that the fuzzy expert system is able
to compute in relative terms and not absolute numbers. This will enable it to be
more robust with respect to the rest of the system.
55
4.2.2
Inputs
The inputs of the fuzzy expert system are a hypothesis of the factors that a policy
maker actually looks at when deciding on the engineering college admission rate.
The variables available in the system will have to be observed and analysed in
order to deduce a suitable hypothesis of the set of inputs. The Figure 4.7 was
observed.
30
Percentage Change
20
10
0
2000
-10
2002
2004
2006
2008
Percentage Change in Demand
Percentage Change in Engineering Admission Rate
Figure 4. 7 Hypothesis of inputs: Percentage change in demand
From Figure 4.7, the Percentage Change in Demand (more specifically,
engineering manpower demand) is somewhat correlated with the Percentage
Change in Engineering Admission Rate. Hence, it was deduced that the
Percentage Change in Demand is one of the factors considered. However, this
alone is not able to account for the variations in the engineering college admission
rate. Thus another input, the Previous Percentage Change in Demand, is proposed.
The Previous Percentage Change in Demand can be interpreted as the outlook or
“mood” of the policy maker carried over from the previous year. Depending on
his mood, the policy maker‟s reaction to a change in engineering manpower
demand can be different.
56
4.2.3
Membership Functions
To summarise, there are two inputs (Percentage Change in Demand and Mood)
and one output (Percentage Change in Engineering Admission Rate) for the fuzzy
expert system. They are differentiated into three fuzzy levels each as shown in the
Table 4.2.
% Change in Demand
Mood (Previous %
Change in Demand)
% Change in
Engineering Admission
Rate
Negative
Pessimistic
Negative
Mild
Neutral
Mild
Positive
Optimistic
Positive
Table 4.2 Levels for Input and Output (Prototype Model)
4.2.4
Rule Base
There are nine rules in total. Table 4.3 shows the proposed rule base.
%Change in Negative
Demand
Mild
Positive
Mood
Pessimistic
Negative
Negative
Mild
Neutral
Negative
Mild
Mild
Optimistic
Mild
Mild
Positive
Table 4. 3 Rule Base for fuzzy Expert System (Prototype Model)
The MATLAB model of the fuzzy expert system can be found in Appendix H.
57
4.2.5
First Estimate
Using the above specifications, the membership functions are calibrated manually
to give an approximate performance of the fuzzy expert system. The membership
functions for the inputs and output are shown in the Figure 4.8. The output is then
compared with the historical data in Figure 4.9. Parameters used for the
membership functions can be found in Appendix I.
Figure 4. 8 Membership Functions (First Estimate, Prototype Model)
58
Engineering Admission Rate
2000
2001
2002
2003
Sim Engineering Rate
2004
2005
2006
2007
2008
Real Engineering Rate
Figure 4. 9 Simulated Engineering College Admission Rate vs. Historical Engineering
College Admission Rate (Prototype Model)
The root mean squared error (RMSE) is 111.7. To put it in context with the data
set provided, the RMSE is divided by the mean of all the historical data points.
The percentage RMSE is 2.84%. From Figure 4.9, the fuzzy expert system seems
to perform well and able to recreate the general trend of the historical rate.
4.2.6
Optimisation of Membership Functions
Although the first estimate is able follow the trend, the membership function
parameters can be calibrated so that the output is able to recreate the values and
the trend of the historical engineering college admission rate. Hence, a particle
swarm optimisation (PSO) is carried out to fine tune the membership function
parameters.
Each membership function is assumed to be triangular and can be defined by three
values: the left foot, triangle peak and right foot. These three values for each
membership function are allowed to vary within a defined range during the PSO
59
process. The PSO will deliver the set of membership functions which gives the
smallest RMSE.
Figure 4. 10 Optimised Membership Functions (Prototype Model)
Engineering Admission Rate
2000
2001
2002
2003
2004
Sim Engineering Rate
2005
2006
2007
2008
Real Engineering Rate
Figure 4. 11 Simulated Engineering College Admission Rate vs. Historical Engineering
College Admission Rate (after optimisation, prototype model)
The optimised membership functions are shown in Figure 4.6. As can be observed
from Figure 4.7, the fuzzy expert system gives a closer fit after optimisation. The
60
RMSE is 41.4 and the percentage RMSE is 1.1%. Parameters of the optimised
membership functions can be found in Appendix I.
4.3
Discussion and Analysis
A fuzzy expert system was built to mimic a policy maker setting the engineering
college admission rate. The fuzzy expert system was able to follow the trend and
values of the historical data provided. Hence, the rule base that was used may be
credible. Figure 4.12 shows the surface of the rule base used. A few observations
about the rule base can be made:
There is a strong positive reaction when the mood and percentage change
in engineering manpower demand are at their extreme positive values.
There is a swifter response to negative changes as only one of the factors
needs to be negative for a strong negative reaction.
There is a natural tendency to decrease the admission rate when the
demand remains stagnant.
From the observations above, it is possible to conclude that policy makers adopt a
cautious approach to increasing engineering college admission rate. They do not
react immediately when the market demand increases but only do so when their
optimistic outlook is validated. Next, they are quick to offer a response when
there is negative change.
61
Figure 4. 12 Surface of Rule Base (Prototype Model)
It ought to be noted that the construction, calibration and analysis of the fuzzy
expert system are based on the few available data. More data can be used for
calibration if available so as to build on the current analysis.
4.4
Traditional Forecasting Models using Fuzzy Logic
Forecasts are often used in decision making because of their predictive ability.
Hence, different kinds of forecasting models have been developed to do just that.
There are some useful and established forecasting models in System Dynamics
methodology, namely the First Order Exponential Smoothing and TREND
function. These models are used in system dynamics models to mimic forecasting
made by decision makers. Holt‟s Method is an improved forecasting model based
on the first order information delay. Although it is seldom found in system
dynamics models, it can also be expressed in a stock-and-flow diagram.
62
4.4.1
First Order Exponential Smoothing
First order exponential smoothing is also known as first order information delay.
It is often used to the fact that beliefs gradually adjusts to the actual value of a
variable. The model structure is shown in Figure 4.13.
Figure 4. 13 Stock and Flow Diagram for First Order Exponential Smoothing
4.4.2
Holt’s Method
Holt‟s method is a case of double exponential smoothing. The slope and intercept
are used to generate the forecast. The equations used are:
𝑆𝑖 = 𝛼𝐷𝑖 + 1 − 𝛼 𝑆𝑖−1 + 𝐺𝑖−1
(4.1)
𝐺𝑖 = 𝛽 𝑆𝑖 − 𝑆𝑖−1 + 1 − 𝛽 𝐺𝑖−1
(4.2)
𝐹𝑖 = 𝑆𝑖 + 𝐺𝑖
(4.3)
Where Si is the current intercept,
63
Gi is the current slope,
Di is the observed data,
Fi is the forecasted value,
α and β are the smoothing constants.
After some manipulation, the following two equations can be obtained:
𝐹𝑖 = 𝐹𝑖−1 + 𝐺𝑖−1 + 𝛼 1 + 𝛽 (𝐷𝑖 − 𝐹𝑖−1)
(4.4)
𝐺𝑖 = 𝐺𝑖−1 + 𝛼𝛽(𝐷𝑖 − 𝐹𝑖−1 )
(4.5)
The two equations are equivalent to the stock and flow diagram, Figure 4.14.
Figure 4. 14 Stock and Flow Diagram of Holt's Method
4.4.3
TREND Function
The TREND function is often used to model growth expectations in system
dynamics (Sterman 1987). One of important point to note is that the TREND
function, unlike other forecasting models, does not directly give the forecast
value. Instead, it gives the growth rate as output. The TREND function can be
interpreted as a behavioural theory of how people form expectations by taking
into consideration the time required for data collection and analysis, the time
64
horizon considered, and the time needed to react to the changes in growth rate.
The model structure is shown in Figure 4.15.
Figure 4. 15 Stock and Flow Diagram for TREND Function
4.4.4
Fuzzy Forecasting Model
While these three models have their appropriate uses, having a fixed model
structure means that their possibilities available to them are limited. This means
that in order to find the most suitable forecasting model, the various model
structures would have to be replaced and integrated with the rest of the model
each time a new one is considered. From a computation perspective, this may
affect the efficiency of the optimisation and design of policies. In this section, we
65
propose the use of fuzzy expert systems. There are many tuning parameters in a
fuzzy logic controller and changing them may lead to different forecasting
behaviours. This flexibility is especially useful in determining the forecasting
model to use without switching the model structure.
The fuzzy forecasting model is a simple feedback controller as shown in Figure
4.16.
Figure 4. 16 Fuzzy Forecasting Model
The input to the fuzzy logic controller is the difference between the current input
and previous forecast. Based on this input, the fuzzy logic controller will generate
an output that is the percentage change in forecast. This output will then be used
to calculate the new forecast.
The input and output of the controller are classified into different levels:
Difference between current input and previous forecast: Negative, Neutral,
Positive
Percentage change in forecast: Negative, Neutral, Positive
Figure 4.17 shows the membership functions used. The membership functions for
both the input and output are kept constant.
66
Figure 4. 17 Input and Output to Fuzzy Logic Controller for Fuzzy Forecasting Model
The rule base is simple as there are only one input and one output.
Difference between current input and Percentage change in forecast
previous forecast
Negative
Negative
Neutral
Neutral
Positive
Positive
Table 4. 4 Rule base for fuzzy expert system - Forecasting Model
4.4.5
Calibration and Optimisation of Fuzzy Forecasting Model
In order to show that the fuzzy forecasting model is flexible, it has to be able to
replicate the behaviour of the traditional forecasting models. Using a cyclical
Engineering Manpower Demand as input, the fuzzy forecasting model is first
calibrated to the output of a traditional forecasting model. Without loss of
generality, all parameters, such as adjustment times, used by the traditional
forecasting model are set to 1 year. After calibration, the fuzzy forecasting model
67
output is tested with respect to the traditional forecasting model using different
test inputs (Appendix J).
The calibration is carried out using Particle Swarm Optimisation. Given that the
membership functions and rule base are assumed to be constant and fixed, the
weight can be interpreted as an expert‟s or a group of experts‟ opinion of the rule.
Hence, the weights of the rule base can be tuned to reflect this knowledge. The
optimisation criterion is the Root Mean Squared Error between the output of the
fuzzy forecasting model and the corresponding tradition forecasting model, i.e.
the optimisation process will seek to minimise the error.
The results are as shown in Table 4.5.
Figure 4. 18 Fuzzy Forecasting Model vs. 1st Order Information Delay (Calibrated with Cyclical Input)
68
Figure 4. 19 Fuzzy Forecasting Model vs. Holt's Method (Calibrated with Cyclical Input)
Figure 4. 20 Fuzzy Forecasting Model vs. TREND Function (Calibrated with Cyclical Input)
69
Fuzzy Forecasting Model vs. Traditional Forecasting
Models RMSE
Test Input
1st Order
Holt’s Method
TREND Function
Cyclical
0.0359
0.0248
0.0374
Saw-tooth
0.126
0.113
0.196
Pulse
0.145
0.108
0.395
Mixed
0.0567
0.0497
0.0381
Table 4. 5 RMSE between Fuzzy Forecasting Model vs. Traditional Forecasting Models (Calibrated
with Cyclical Input)
Results show that the fuzzy forecasting model is able to replicate the behaviour of
the different forecasting models by simply tuning the different weights of the
rules. However, it can be observed that the error is much greater when the inputs
contain sudden discontinuous changes like in the Saw-tooth and Pulse inputs.
Hence, this may suggest that the calibration of the fuzzy forecasting model may
not be robust enough when the system is noisy or rapidly changing.
In order to show that the performance of the fuzzy forecasting model is insensitive
to the choice of calibration data, the fuzzy forecasting model is calibrated using
different calibration inputs.
70
Inputs
Calibrated Using...
Cyclical
Saw tooth
Pulse
Mixed
Cyclical
0.0359
0.0329
0.0394
0.412
Saw tooth
0.126
0.133
0.128
0.128
Pulse
0.145
0.147
0.146
0.144
Mixed
0.0568
0.0537
0.0593
0.0534
Table 4. 6 RMSE between Fuzzy Forecasting Model vs. 1st Order Information Delay (Calibrated with
Different Inputs)
Inputs
Calibrated Using...
Cyclical
Saw tooth
Pulse
Mixed
Cyclical
0.0248
0.0264
0.0344
0.0318
Saw tooth
0.113
0.128
0.100
0.101
Pulse
0.108
0.112
0.107
0.105
Mixed
0.0497
0.0511
0.0480
0.0700
Table 4. 7 RMSE between Fuzzy Forecasting Model vs. Holt’s Method (Calibrated with Different
Inputs)
Inputs
Calibrated Using...
Cyclical
Saw tooth
Pulse
Mixed
Cyclical
0.0374
0.0485
0.0932
0.486
Saw tooth
0.196
0.189
0.211
0.189
Pulse
0.395
0.393
0.385
0.393
Mixed
0.0381
0.0300
0.0719
0.0300
Table 4. 8 RMSE between Fuzzy Forecasting Model vs. TREND Function (Calibrated with Different
Inputs)
71
From the tables, the difference in RMSE when different calibration data are used
is small. This would mean that the fuzzy forecasting model‟s performance is more
or less independent of the type of calibration data used. The model‟s performance
is relatively insensitive to the calibration data used.
4.5
Conclusion
In this chapter, a fuzzy expert system was constructed to replicate the decision
rule of a generic supply chain model so as to demonstrate its ability to replace a
decision policy. The fuzzy expert system was able to replicate the decision rule of
the supply chain model rather satisfactorily. Next, fuzzy expert system was
applied on an unknown part of the engineering manpower supply and demand
system. The fuzzy expert system was created to replicate the actions of a policy
maker setting the engineering college admission rate. It was found that the fuzzy
expert system was able to give generally good results and its rule base revealed a
possible mental model behind the policy maker‟s decision rule for engineering
college admission rate. More historical data would lend more credibility to the
findings.
It can also be concluded the fuzzy forecasting model is able to replace the various
traditional forecasting models. The fuzzy forecasting model is flexible because it
is able to approximate the various types by simply changing the weights of the
rules. This flexibility is desirable when searching for an optimal decision policy.
This is because the forecasting model structure will not be fixed or limited and
there is no need to switch in and out the various types of model structures to be
explored. The fuzzy forecasting model is also able to give similar results despite
72
being calibrated using different data. This shows that the performance of the fuzzy
forecasting model is insensitive to the type of calibration data. However, while the
fuzzy forecasting model is able to follow the trend of the input data, the error
between the outputs of the fuzzy forecasting model and the traditional forecasting
model can become significant when the input is highly noisy or rapidly changing.
Chapter 5
Optimal Decision Policy Using
Fuzzy Logic
The previous chapter demonstrated the versatility of fuzzy logic, enabling the
imitation of decision policies and forecasting models. This chapter will extend on
what was done previously and attempt to synthesise an optimal decision policy
using fuzzy logic. This decision policy is based on a hypothetical policy lever, the
Approval Fraction of foreign engineers, to move the system towards the objective.
The decision policy should also enable us to handle uncertainty within the system.
5.1
Decision Policy and Fuzzy Logic
A good decision policy is of great interest to policy makers as this decision policy
will enable them to pursue their objectives. However, it is difficult to obtain good
policies which fulfil the objectives robustly. Formally, there are three methods to
obtain decision policies for high order and non-linear models: mathematical
methods, optimal algorithms and guideline methods. These methods are often
difficult to apply and require a certain level of sophistication and knowledge to
derive them. Thus, a method which would allow us to arrive at a good decision
policy with relative ease should be sought. Fuzzy logic can be one way where this
can be achieved.
As seen from previous chapters, fuzzy logic, along with the correct inputs, can be
used to mimic decision policies and forecasting models. Thus, it is plausible that
fuzzy expert systems can be tuned with respect to a policy objective so as to give
73
74
us the corresponding optimal decision policy. The Manpower Supply and Demand
model will be used to study this possibility.
5.2
Policy Lever and Objective
For this study, our objective is to achieve a certain Resident Engineers: EP
Engineers ratio (henceforth referred to as the Objective Ratio). This is a realistic
objective because policy makers often have to balance the domestic and foreign
workforce. In the model, a normalised ratio will be used. Ideally, if the Objective
Ratio is met, the value of the Normalised Ratio should be equal to 1.
The policy lever that will be used is the Approval Fraction. This approval fraction
is the fraction of EP Engineers who are permitted to enter the system. It ranges
from 0 to 2. This means that depending on the situation, a policy maker can
choose to allow numbers varying from zero EP engineers or twice the number of
EP Engineers as stipulated by the market. Thus, a policy maker is able to decide
to bring in more foreign workforce when the demand is high. On the other hand,
he is also able to cut down on the foreign influx when demand is low. Although
the approval fraction may not be explicitly manipulated in real life manpower
policies, it is still of relevance and importance as manpower policies are
inadvertently related to it. For example, the issuance of work permits or the
collection of foreign workers levy has the same effect of regulating foreign
manpower. Hence, the approval fraction can be considered to be a surrogate
indicator of the actual manpower policies implemented. Learning how the
approval fraction affects the system can lead to insights as to how actual
manpower policies should be calibrated.
75
The fuzzy decision policy model will use the Normalised Ratio as an input and
mimics a decision policy which controls the Approval Fraction. The goal of this
decision policy is to keep the Normalised Ratio within an acceptable interval. As
mentioned before, decision makers often base their decisions on forecasts. Hence,
a forecast of the Normalised Ratio is needed. This forecast will be generated using
a fuzzy forecasting model due to its flexibility. In effect, the fuzzy decision policy
model consists of two parts, a fuzzy forecasting model which generates a forecast
of the Normalised Ratio and a fuzzy policy model which acts depending on the
forecast.
5.3
Fuzzy Policy Model
The fuzzy policy model will be mimicking a decision policy setting the Approval
Fraction. A fuzzy feedback model structure is used to generate this approval
fraction.
Figure 5. 1 Fuzzy Policy Model
5.3.1
Output of Fuzzy Logic Controller
The output is the percentage change in the Approval Fraction. As before, the
percentage change is used so that the approval fraction will be robust and compute
76
in relative terms. The percentage change in Approval Fraction will have three
levels: Negative, Neutral, and Positive.
5.3.2
Input of Fuzzy Logic Controller
The input to the fuzzy expert system is the forecasted value of Normalised Ratio,
i.e. Current Ratio/Objective Ratio. This means that ideally the normalised ratio
should be 1. The use of the normalised ratio as an input is intuitive. This is
because if the ratio is more than 1, this means we have too many resident
engineers and can increase our intake of EP Engineers. The converse is also true.
If the ratio is less than 1, this means that there are too many EP Engineers and
must decrease the influx of EP Engineers. The input will be divided into three
levels: Low, Neutral, and High.
5.3.3
Membership Functions of Fuzzy Logic Controller
Figure 5.2 shows the membership functions. The input is classified into three
levels. A policy maker when looking at the ratio may feel that it is “Low” if the
number is less than the objective, “Neutral” if the number is close to the objective
or “High” if the number is more than the objective. Similarly, a policy maker may
react in three different ways, “Negative” to reduce the approval fraction, “Neutral”
to maintain the approval fraction or “Positive” to increase the approval fraction.
77
Figure 5. 2 Membership Functions for Fuzzy Policy Model
5.3.4
Rule Base of Fuzzy Logic Controller
The rule base is simple as there are only one input and output. Hence, for a
certain input considered, there is only one logical output. For instance, when the
Normalised Ratio is “Low”, the output must be “Negative” as it would not make
sense to further increase the number of EP Engineers when there is already too
many. This rule base may be unique due to the model considered. In cases where
the rule base is larger with multiple levels of inputs and outputs, discussions with
domain experts to solicit consensus about the rule base can be considered. It may
also be useful to consider optimisation algorithms to find a rule base. However,
78
this may lead to illogical results which may not be in line with rational thinking
like the example above.
Forecasted value of Normalised Ratio Percentage
Fraction
Low
Negative
Neutral
Neutral
High
Positive
change
in
Approval
Table 5. 1 Rule base for fuzzy policy model
5.4
Calibration and Optimisation of Decision Policy
Model
The decision policy is made up of two fuzzy models. First, the fuzzy forecasting
model will be generating a forecast of the Normalised Ratio. Next, based on the
forecast, the fuzzy policy model will then generate an appropriate approval
fraction.
Figure 5. 3 Fuzzy Decision Policy Model
Particle Swarm Optimisation is used to find the set of weights for both fuzzy
models which would keep the results close to objective (i.e. Normalised Ratio =
79
1).Three scenarios for Engineering Manpower Demand as the input were
considered: the demand increases linearly, the demand follows a cyclical pattern
and the demand follows a cyclical pattern with a general linear increasing trend
(refer to Appendix K). A simulated timeframe of forty years was used. The first
five years was for the system to reach steady state. This is so that all changes after
the fifth year are due to the inputs used. The fuzzy policy model and fuzzy
forecasting model were calibrated to give the best results possible under a
deterministic setting using input data for the next twenty years. In order to
demonstrate the capability of the fuzzy decision policy after calibration, the last
fifteen years were used as validation.
The root mean squared error (RMSE) with respect to 1 was used as an
optimisation criterion.
𝑤𝑜𝑝𝑡 = 𝑎𝑟𝑔𝑚𝑖𝑛 𝑓(𝑤𝑥 )
𝑓 𝑤𝑥 =
𝑡
𝑖
𝑦 𝑖 𝑤 𝑥 −1 2
𝑡
Where:
wx is the set of weights for a particle x,
t is the number of data points in the calibration phase
yi is the Normalised Ratio at a data point i.
The results obtained for each type of input are as shown in Figure 5.4 to 5.6.
(5.1)
(5.2)
80
1.02
Calibration
Validation
1.01
1
0.99
0.98
0.97
0.96
RMSE = 0.00074
0.95
0.94
0
5
10
15
20
25
30
35
40
Figure 5.4 Normalised Ratio after Implementation of Fuzzy Decision Policy (Ramp Input, RMSE)
1.03
Calibration
Validation
1.02
1.01
1
0.99
0.98
0.97
0.96
RMSE = 0.00997
0.95
0.94
0
10
20
30
40
Figure 5.5 Normalised Ratio After Implementation of Fuzzy Decision Policy (Cyclical Input, RMSE)
81
1.03
Validation
Calibration
1.02
1.01
1
0.99
0.98
0.97
0.96
RMSE = 0.00979
0.95
0.94
0
5
10
15
20
25
30
35
40
Figure 5.6 Normalised Ratio after Implementation of Fuzzy Decision Policy (Cyclical Ramp Input,
RMSE)
Another possible optimisation criterion is the Worst Absolute Error. The Worst
Absolute Error is the maximum absolute error with respect to 1 and should be
minimised.
𝑤𝑜𝑝𝑡 = 𝑎𝑟𝑔𝑚𝑖𝑛 𝑔(𝑤𝑥 )
𝑔 𝑤𝑥 = max 𝑎𝑏𝑠 𝑦𝑖 𝑤𝑥 − 1
(5.3)
∀𝑖𝜖𝑡
(5.4)
Where
wx is the set of weights for a particle x,
t is the data points in the calibration phase
yi is the Normalised Ratio at data point i.
This is used to calibrate the fuzzy decision policy and the results are as follows:
82
1.02
Calibration
Validation
1.01
1
0.99
0.98
0.97
0.96
WAE = 0.00292
0.95
0.94
0
5
10
15
20
25
30
35
40
Figure 5.7 Normalised Ratio After Implementation of Fuzzy Decision Policy (Ramp Input, Worst
Absolute Error)
1.02
Calibration
Validation
1.01
1
0.99
0.98
0.97
0.96
WAE = 0.0183
0.95
0.94
0
5
10
15
20
25
30
35
40
Figure 5.8 Normalised Ratio After Implementation of Fuzzy Decision Policy (Cyclical Input, Worst
Absolute Error)
83
1.03
Calibration
1.02
Validation
1.01
1
0.99
0.98
0.97
0.96
WAE = 0.0195
0.95
0.94
0
5
10
15
20
25
30
35
40
Figure 5.9 Normalised Ratio After Implementation of Fuzzy Decision Policy (Cyclical Ramp Input,
Worst Absolute Error)
5.4.1
Discussion and Analysis
From the figures above, the fuzzy decision policy is slightly sensitive to the
choice of optimisation criterion. This is understandable because different
optimisation criterion gives a different set of weights. This in turn leads to
different results.
It can be observed that the fuzzy decision policy is able to keep the Normalised
Ratio close to the objective (within ±5%) under all three different inputs when
given the calibration data. In addition, the fuzzy decision policy’s ability is
validated as it is able to maintain its performance through the validation phase.
Hence, the fuzzy decision policy can be used as the optimal decision policy or as a
reference to such a decision policy.
84
The fuzzy decision policy’s performance depends on the type of input used for
calibration. The fuzzy decision policy is able to keep the normalised ratio very
close to 1 when the input demand is increasing linearly. On the other hand, the
performance is poorer when the input includes cyclical changes. Thus, the fuzzy
model may not be suitable for systems which are rapidly changing.
5.5
Performance of Fuzzy Decision Policy Model under
Noise
In the previous section, the inputs and parameters are deterministic. However, in
reality, inputs and parameters such as demand are often difficult to estimate and
are subject to errors. As a result, if the fuzzy decision policy model is to be
considered useful, it has to be robust even when there are noise and errors in the
inputs and parameters.
Assuming that the standard deviations of the noise and errors are known, the
absolute values of noise can be formulated as α*σ. σ is the standard deviation of
noise and α is a constant which changes the magnitude of noise in the system.
When α increases, the noise in the system also increases. Hence, the fuzzy
decision policy can be considered robust if it is able to keep the Normalised Ratio
between an acceptable range for a desired α.
We shall assume that the acceptable range for the Normalised Ratio is defined to
be between 0.95 and 1.05 (±5%). This range indicates how policy makers are
tolerant of the deviation from the objective and depends on how close the system
must be kept to the objective.
85
5.5.1
Noise and Errors
To study the fuzzy decision policy under noise, noise is added into three
parameters: Manpower Demand, the Effect of Gap on Wages and EP Engineers to
Resident Engineers Fraction. The values for standard deviation of noise are
assumed and are shown in Table 5.2.
Parameters
Magnitude of Noise
Coefficient of
Variance (%)
Demand
500
0.833
Effect of Gap on Wages
0.01
1
EP to Resident Engineers
Fraction
0.001
1
Table 5.2 Assumed Standard Deviation of Noise
5.5.2
Robustness of Fuzzy Decision Policy Calibrated under Deterministic
Conditions
In the above paragraphs, it is assumed that if the fuzzy decision policy is able to
handle a noise α*σ, it will be able handle any noise that is less than α*σ. This is
not true if the system behaviour is non-monotonic, i.e. as noise increases, the
perturbations to the system output are not of the same magnitude to the level of
noise or in the same direction.
Using the three parameters and varying levels of noise added to them, it was
found that the Engineering Manpower Model is indeed monotonic. Since there
are three parameters and two signs (positive and negative) for each parameter,
there are eight possible permutations, or corner points, for a defined noise α*σ.
Figure 5.10 shows the model output from these eight points, using a cyclical
86
demand input. A similar figure for ramp demand input can be found in the
Appendix L.
1.3
1.25
1.2
Output 1
1.15
Output 2
1.1
Output 3
1.05
Output 4
1
Output 5
0.95
Output 6
0.9
Output 7
0.85
Output 8
0.8
0
50
100
Figure 5.10 Model Outputs from Extreme Points (Cyclical)
Using Monte Carlo simulations, random noise levels that are below the defined
α*σ are generated. Their model outputs are compared with those observed in
Figure 5.10. It was found that none of the randomly generated noises’ outputs
exceed those in Figure 5.10. This demonstrates that for any noise below α*σ, the
system behaviour will not deviate more than the behaviour from the one generated
with noise magnitude α*σ. The envelopes of the output trajectories are always
generated by the corner points of the noisy parameters. In general, such behaviour
is generated if the system state levels are monotonic with respect to these
parameters. .
For small enough perturbations, it is reasonable to treat the
underlying dynamic system as a linear one, thus producing system state levels that
are monotonic with respect to the parameters. A fuzzy decision policy that is able
to handle noise α*σ will be able to handle any noise below α*σ.
87
The robustness of the calibrated fuzzy decision policy found in Section 5.4 is
tested. Since the system is shown to be monotonic when the changes made to the
system is small, it can be assumed that the most extreme change in system
behaviour is given by one of the eight points when noise is equal to α*σ. As it is
not known which of the eight points changes the system behaviour the most, all of
the eight points are tested. Each set of weights is used to find the maximum α that
it is able to handle all eight points for the calibrated type of input. Table 5.3 shows
the results. Figure 5.11 and Figure 5.12 show the model output when the noise is
at maximum α and above the maximum α for the case Cyclical Input and RMSE
as optimisation criterion.
Type of Input
Optimisation Criterion
Maximum α
Cyclical
RMSE
0.2891
Cyclical
WE
0
Ramp Cyclical
RMSE
0.5391
Ramp Cyclical
WE
0.6406
Ramp
RMSE
2.3672
Ramp
WE
2.9063
Table 5. 3 Maximum α for Fuzzy Decision Policy (Calibrated under Deterministic Conditions)
88
1.03
1.02
Series1
1.01
Series2
1
Series3
0.99
Series4
0.98
Series5
0.97
Series6
0.96
Series7
0.95
Series8
0.94
0
10
20
30
40
Figure 5.11 Output from Corner Points when Alpha = 0.2891 (Cyclical Input, Calibrated using RMSE)
1.1
1.09
1.08
1.07
1.06
1.05
1.04
1.03
1.02
1.01
1
0.99
0.98
0.97
0.96
0.95
0.94
0.93
0.92
Series1
Series2
Series3
Series4
Series5
Series6
Series7
Series8
0
10
20
30
40
Figure 5.12 Output from Corner Points when Alpha = 0.2969 (Cyclical Input, Calibrated using RMSE)
The maximum α for cyclical and ramp cyclical demand are low. Therefore, it can
be deduced that the fuzzy decision policies obtained are not robust. α for ramp
demand are much higher, indicating the robustness of the decision policy. The
89
reason for this could be that there are more fluctuations, variations and less
predictability in the cyclical and ramp cyclical cases. Also, even though α is high
for ramp demand, this is not useful because there is no real need for a decision
policy if the system inputs are known to be linear.
The poor robustness of these fuzzy decision policies implies that it is insufficient
to simply calibrate them to best fit a policy objective under deterministic
conditions. Hence, a new way to calibrate the fuzzy decision policy should be
explored in order to obtain a set of robust parameters.
5.6
Improving the Robustness of Fuzzy Decision Policy
One way to ensure robustness is to include noise and errors in the calibration
process. For a set of weights, the maximum possible α is found using a binary
search method. The best set of weights is then found using a particle swarm
optimisation. The optimisation seeks to find the set of weights that maximises α.
Figure 5.13 shows the optimisation process.
5.6.1
Results
Alternative sets of weights for the fuzzy decision policy were found for each type
of input. The maximum α for each case is shown in Table 5.4.
Type of Input
Maximum α
Cyclical
1.3359
Ramp Cyclical
1.4844
Ramp
2.8858
Table 5.4 Maximum α for Fuzzy Decision Policy Calibrated for Robustness
90
To test the fuzzy decision policy and see that it is truly robust for all noise levels
below α, α is varied from 0 to Maximum α. The following figures show the
Normalised Ratio for α = 0, α = Maximum α and α slightly above Maximum α for
a cyclical input.
Figure 5.13 Optimisation Process under noise
91
Figure 5.14 Normalised Ratio for alpha =0, cyclical input
1.04
1.03
1.02
Series1
1.01
Series2
1
Series3
0.99
Series4
0.98
Series5
Series6
0.97
Series7
0.96
Series8
0.95
0.94
0
10
20
30
40
Figure 5.15 Normalised Ratio for alpha = 1.3359, cyclical input
92
1.05
1.04
1.03
1.02
Series1
1.01
Series2
Series3
1
Series4
0.99
Series5
0.98
Series6
0.97
Series7
0.96
Series8
0.95
0.94
0
10
20
30
40
Figure 5.16 Normalised Ratio for alpha = 1.41, cyclical input
5.6.2
Discussion & Analysis
As can be observed from the graphs, the same fuzzy decision policy was able to
keep the Normalised Ratio within the defined acceptable range for varying levels
of noise. This is a marked improvement from the previous case where the fuzzy
decision policy was calibrated for the best performance under a deterministic
setting. It can be concluded that the robustness of the fuzzy decision policy indeed
improved when calibrated this way. However, the performance in the noiseless
case is sacrificed as it is not able to keep the Normalised Ratio as close as it could
have. It is also pertinent to note that the maximum α for a fuzzy decision policy
depends on the defined acceptable range for the policy objective.
The robustness is gained in exchange for extra computational time. As the
optimisation process needs to calculate the maximum α for each and every set of
93
weights it considers, this may pose a problem for large models or fuzzy
controllers with many fuzzy weights. This is also true if there are many noisy
parameters, thus leading to many corner points to consider in the optimisation
process.
5.6.3
Monte Carlo Simulation under Random Noise
In the previous section, it is assumed that the system is monotonic and thus noise
is added at a flat level to the system throughout the simulation. A decision policy
which is able to handle the maximum amount of noise was found. In reality, noise
is often random and not fixed at a certain level for sustained periods of time.
Thus, it is important that the fuzzy decision policy found is also robust when the
noise is varying randomly.
The maximum α found in the previous section serves as a reference since the
fuzzy decision policy is calibrated to handle this level of noise. The fuzzy decision
policy should be able to keep the normalised ratio within the acceptable range if
the noise varies randomly and remains below the level of maximum α. The noise
is assumed to follow a beta (3, 3) distribution between – α*σ and α*σ, α = 1.3359
and the cyclical input case was used. The beta distribution is used because it is
more realistic than a uniform distribution. Smaller values of noise are more likely
to happen than larger values. Monte Carlo simulations were carried out to test the
fuzzy decision policy’s performance under random noise.
In order to demonstrate the fuzzy decision policy’s effectiveness, the system is
also subjected to random noise without any form of decision policy affecting the
approval fraction. The approval fraction is set at 1. Monte Carlo simulations were
94
carried out using the same inputs and noise distribution as above, but without a
decision policy. Figure 5.17 shows that, without control over the approval
fraction, the acceptable range will definitely be exceeded. For each run, the
normalised output also remains outside of the acceptable range for an approximate
average 20% of the simulation time.
Figure 5.17 Monte Carlo Simulation under random noise without any decision policy
95
Figure 5.18 Monte Carlo Simulations (Cyclical Input)
Figure 5.19 Instance of Model Output Exceeding Acceptable Range (Cyclical Input)
96
It can be seen from Figure 5.18 that the fuzzy decision policy is successful in
keeping the normalised ratio within the acceptable range most of the time with a
confidence of 95%. Out of the hundred simulations, ninety nine of them stepped
out of the acceptable range at least once. However, it was observed that when the
model output exceeds the acceptable range, it spends a mere average 7.3% of the
simulation time outside.
This represents a significant improvement over the case where there is no fuzzy
decision policy controlling the approval fraction. Thus, it can be concluded that
the fuzzy decision policy is useful in helping us achieve our policy objective and
is robust even when the noise is randomly distributed.
5.6.4
Linear Programming (LP)
It is hoped that linear programming can help to give a good estimate of the best
set of weights. Unlike the binary search algorithm where many iterations are
needed to find the maximum α, the maximum α for a set of weights can be
calculated directly using the LP model, thus reducing the computational time
required.
Linearization of the model is justifiable when the noise is small. In cases which
are complex with many noisy parameters, solving a linear programming model is
extremely efficient because of the simplex method. However, for clarity of
exposition, a simplified version of the model will be used in this study. The
simplified version of the model is proposed as shown in the following figure.
97
Figure 5.20 Simplified Engineering Manpower Model
As before, the fuzzy decision policy influences the EP Engineers Hiring Rate
through an approval fraction. The fuzzy decision policy is modelled using fuzzy
controllers. The MATLAB version of this model and the fuzzy decision policy
can be found in the Appendix M.
The state variables in simplified model are expressed by the following equations.
1
1
1
1
REt = 1
− tthr
− arjd −
. REt−1 + E2Rf
− tthr . EPt−1 +
arcd
af
tthe
EPt = 1 − t −
1
aejd
−
E2Rf . EPt−1
−
1
tthe
. aft . REt−1 +
Where:
RE: Resident Engineers
EP: EP Engineers
tthr: Time to hire resident engineers
arjd: Average Resident Engineer Job Duration
arcd: Average Resident Engineer Career Duration
E2Rf: EP Engineer to Resident Engineer Fraction
d: Demand
af: Approval Fraction
tthe: Time to Hire EP Engineer
af t
tthe
1
tthr
. dt−1
. dt−1
(5.5)
(5.6)
98
aejd: Average EP Engineer Job Duration
In order to build the LP model, the above state variable equations will have to be
linearised about a nominal set of parameters. A state variable Y can be expressed
by the following equation.
𝑌𝑡 = 𝑌𝑡 + ∆𝑌𝑡
(5.7)
Where:
Y is a state variable
𝑌 is the state variable under nominal setting
∆𝑌 is the change introduced due to noise in the parameters
Using the above formulation, 𝑅𝐸 and 𝐸𝑃 can be found using the equations 5.5 and
5.6 with nominal parameters. For this study, noise is added to the demand and the
EP Engineer to Resident Engineer fraction. Thus, ∆RE and ∆EP will be calculated
based on the noise. However, this is not all as EP also depends on the approval
fraction. The approval fraction is generated by the fuzzy decision policy which is
a non-linear function. Hence, the approval fraction has to be linearised. The linear
form of the Approval Fraction (af) is assumed to be:
aft = 𝑎𝑓𝑡 + ∆aft
∆𝑎𝑓𝑡 = 𝑐 ∗ ∆𝑅𝐸𝑡−1 + 𝑑 ∗ ∆𝐸𝑃𝑡−1
Where:
𝑎𝑓 is the nominal approval fraction,
∆af is the change in approval fraction,
c and d are constants .
(5.8)
(5.9)
99
Using the above formulations, ∆RE and ∆EP can be expressed by the following
matrix.
𝑎11
∆𝑅𝐸𝑡
= 𝑎
∆𝐸𝑃𝑡
21
𝑎12 ∆𝑅𝐸𝑡−1
𝑏11
𝑎22 ∆𝐸𝑃𝑡−1 + 𝑏21
𝑏12
∆𝑑
𝑏22 ∆𝐸2𝑅𝑓
(5.10)
Where:
𝑎11 = 0
𝑎12 = 𝐸2𝑅𝑓 −
𝑎21 =
𝑎22 = 1 −
1
𝑡𝑡𝑟
𝑐
𝑎𝑓𝑡−1
. 𝑑𝑡−1 − 𝑅𝐸𝑡−1 − 𝐸𝑃𝑡−1 −
𝑡𝑡𝑒
𝑐
𝑎𝑓𝑡−1
1
𝑑
−
− 𝐸2𝑅𝑓 +
. 𝑑𝑡−1 − 𝑅𝐸𝑡−1 − 𝐸𝑃𝑡−1
𝑡𝑡𝑒 𝑎𝑒𝑗𝑑
𝑡𝑡𝑒
𝑏11 =
1
𝑡𝑡𝑟
𝑏12 = 𝐸2𝑅𝑓
𝑏21 =
𝑎𝑓𝑡−1
𝑡𝑡𝑒
𝑏22 = 𝐸2𝑅𝑓
A LP model can be built using the equations above and the MATLAB code can be
found in Appendix N. ∆d and ∆E2Rf are the noise added into the system. As in the
previous section, they are in the form of α*σ, where α is a constant and σ is one
standard deviation of noise. The LP model will find the maximum α possible for a
particular set of weights. A particle swarm optimisation will then be used to find
the set of weights that give the maximum α. Different weights give different
behaviours and thus different linear coefficients. Hence, for each set of weights,
100
coefficients c and d has to be calculated from simulations varying Resident
Engineers and EP Engineers.
Ideally, the results found from using the LP model and the Simulink model should
be the same. However, as the LP model uses an approximation of the fuzzy
decision policy, the model output is expected to differ once the system moves
away from the nominal level.
For this study, the demand was set to follow a cyclical pattern. The optimisation
process was carried out twice, once using the Simulink model and once using the
LP mode. This will allow us to compare between the two models. The maximum
α found for the LP model and Simulink model are 2.1094 and 4.1875 respectively.
This is an improvement from a maximum α of 1.5000 when the approval fraction
is kept at 1 and is not controlled by a decision policy.
From the results, it can be deduced that calibration using the LP model led to a
loss in robustness. The set of weights found is only able to handle about half the
noise level that the best set of weights found using the Simulink model. However,
this loss can be overcome by using better approximations in the LP model.
Despite the loss in robustness, the set of weights found using the LP model can be
used as a quick approximation to a good decision policy. This is especially the
case if the model is large and contains several noisy parameters. Finding a
decision policy with the Simulink model in such cases will take very long.
As was the case in the previous section, a Monte Carlo simulation was carried out
to test the fuzzy decision policy found by the LP model under random noise. The
noise level is constrained to be between -α*σ and α*σ, where α is equals to the
101
maximum alpha of 2.1094. The noise was assumed to follow a beta (3, 3)
distribution. The Figure 5.21 shows the results of the Monte Carlo simulation.
From Figure 5.21, the fuzzy decision policy is able to keep the normalised ratio
within the acceptable range at all times with a confidence of 95%. Out of the
hundred simulations carried out, the model output stepped outside the acceptable
range thirty-six times. This implies a 64% probability that the fuzzy decision
policy would succeed in its objective. Furthermore, when the acceptable range is
exceeded, the model output remained outside of the range for a short 1.5 time
steps on average. Thus, these can be considered as outliers and does not affect the
performance in general. Figure 5.23 and 5.24 show a couple of instances of the
model output.
Figure 5.21 Monte Carlo Simulation using weights found from LP Model and under random noise
(beta distribution)
102
Figure 5.22 Model Output with no noise
Figure 5.23 Model output under random noise (Within acceptable range)
103
Figure 5.24 Model output under random noise (Acceptable range breached)
Hence, it can be concluded that the fuzzy decision policy found by the LP model
is useful. Furthermore, judging from the results of the Monte Carlo simulation, it
is likely that the fuzzy decision policy is able to handle higher levels of random
noise, or a narrower acceptable range of normalised ratio.
5.7
Conclusion
Fuzzy Logic was applied in an attempt to find an optimal decision policy to
satisfy a policy objective. The policy objective was defined to be the ratio
between Resident Engineers and EP Engineers. It was hoped that the certain ratio
between the two variables can be kept. To achieve this policy objective, a policy
lever called the Approval Fraction was used. The Approval Fraction is the fraction
of EP Engineers that would be allowed into the system.
104
The decision policy model consists of two parts. First, a fuzzy forecasting model
is used to generate a forecast of the Normalised Ratio. Next, based on this
forecast, a fuzzy policy model will set the Approval Fraction to determine the
number of EP Engineers allowed into the system.
Three different cases of Engineering Manpower Demand input were considered.
They are Ramp input, Cyclical input and Cyclical plus Ramp input. For each case,
the decision policy model is calibrated, using Particle Swarm Optimisation, to
minimise a certain optimisation criterion. Two optimisation criteria were tested
and they were the Root Mean Squared Error and the Worst Absolute Error. It was
found that the calibrated decision policy model for each scenario is able to satisfy
the policy objective in all three cases.
Next, it is more realistic that the parameters and input to the model are noisy.
Thus, the calibrated decision policy models were tested by adding noise to the
parameters and input. It was first shown that it is reasonable to assume that the
system is monotonic. Noise is then added in the form of α*σ, where α is a
constant and σ represents one standard deviation of noise. As a result of the
monotonic assumption, a fuzzy decision policy that is able to handle noise α*σ
will be able to handle any noise below α*σ. For the Cyclical and Cyclical Ramp
input, the calibrated fuzzy decision policy model is not robust and is intolerant of
noise. However, for the Ramp input, the calibrated decision policy model is able
to satisfy the policy objective up to a noise level of approximately 2%. Thus, it
can be concluded that the fuzzy decision policy calibrated under a deterministic
setting is not robust.
105
The fuzzy decision policy is then calibrated by considering noise. To do this, the
maximum α for each particle in the particle swarm is found by testing the extreme
points. This process is a tedious one as depending on the number of noisy
parameters, the number of extreme points can grow exponentially large. In the
study, there are three noisy parameters and thus eight extreme points. It was found
that after calibration, the fuzzy decision policies became more robust for each type
of input. They were able to tolerate higher levels of noise than previously
possible. Although better results were obtained, this is in exchange for additional
computational time. This may not be palatable for projects where the system is
large and the number of noisy parameters is plenty.
To overcome this issue, linear programming (LP) was considered. A LP model
should approximate the behaviour of the original model about a nominal operating
point. Moreover, the LP model can be solved quickly to find the maximum α for a
set of weights. Thus, this should reduce the computational time regardless of the
number of noisy parameters. It was found that the fuzzy decision policy calibrated
using the LP model is less robust than the one calibrated using the original model.
This is expected as the LP model is only an approximation. However, the fuzzy
decision policy found is useful and can serve as a quick reference if needed.
To conclude, an attempt to find an optimal decision policy using fuzzy logic was
conducted. It was found that the policies found under deterministic settings are
not robust to noise. Fuzzy decision policies calibrated with noise are more robust
but are computationally expensive. Thus, linear programming can be one way to
approximate robust fuzzy decision policies.
Chapter 6
Conclusion
This chapter summarises the objectives, the design, the results and analyses of the
study. Contributions made by the study are then presented. The limitations of the
study are then discussed. Finally, scope for future research is then suggested.
6.1
Summary
Effective manpower planning on a macro level is important. Doing it well will
reduce the inefficient use of human resources and hence maximise productivity
and growth. Also, in an increasingly globalised world, it is essential to balance the
nurture and well-being of the resident workforce and the need to bring in foreign
expertise to supplement and bolster the resident workforce. The engineering
manpower demand and supply system was studied because of the importance of
engineers in the global context. Although institutes of higher learning produce
many engineers annually, not all engineering-trained graduates eventually join the
workforce as engineers. Human judgement and decision often play a huge role in
social systems such as these. However, these interactions are often neglected in
established economic models due to their unpredictability and sometimes,
irrationality.
It was proposed to model the engineering manpower demand and supply system
using a system dynamics approach. System dynamics models promises to
overcome certain limitations that mathematical and economic models face such as
non-linear behaviour and inherent feedback loops within the system structure.
However, they are dependent on available knowledge and information about the
106
107
system. Artificial Intelligence techniques may be applied to replace parts of the
system which are poorly understood. These techniques can also be applied to help
policy makers formulate better decision policies which are robust and effective.
The objectives of the study were determined in relation to the above
considerations and they are:
Propose and construct a prototype model of the engineering manpower
supply and demand system using the system dynamics approach.
Obtain more knowledge of the system structure so as to understand the
system behaviour.
Provide answers to some policymaking questions and give some ideas to
possible policymaking guidelines concerning manpower policies.
Apply A.I. tools alongside system dynamics to replace parts of the model
which are poorly understood or where there is insufficient knowledge.
Use A.I. tools to obtain a good decision policy to achieve policy
objectives.
To achieve the objectives, a hypothesis of the system structure was proposed.
Based on this hypothesis, a prototype model was built and validated using
historical annual data. Some possible policy levers in the prototype model were
identified. Scenario analysis was carried out by varying the policy levers and
observing their impact on the system behaviour. Firstly, it was observed that an
excessive influx of foreign engineers depresses the wage of engineers and hence
makes the profession less attractive. This leads to an increase in the leakage of
engineering trained residents into other industries. Next, the engineering college
108
admission rate is effective in increasing the number of resident engineers up to a
certain extent. Beyond this, increasing the engineering college admission rate only
increases the number of resident jobseekers. Matching the demand also leads to an
oversupply of resident jobseekers. Also, the effect of changing the engineering
college admission rate is delayed.
From these observations, some conclusions can be reached. Firstly, it is important
to regulate the influx of foreign engineers into the system and also maintain the
critical pool of resident engineers in the system. Secondly, setting the engineering
college admission rate according to changes in the engineering manpower demand
is insufficient. Other factors also have to be considered in order for the system to
match demand but at the same time decrease unemployment.
Sensitivity analysis of the model to the key model parameters was carried out.
From the One Way Sensitivity Analysis, it was concluded that certain model
parameters are able to impact more aspects of the model. A Monte Carlo
simulation was also carried out. It was found that the general system behaviour of
the model is robust to changes made to the key model parameters.
In order to test the ability of a fuzzy expert system to replicate decision policies, it
was suggested a fuzzy expert system be built to replace the decision rule in a
generic system dynamics supply chain model. This was done so as to demonstrate
that this approach of building a fuzzy expert system and replacing a decision rule
with it is feasible and reliable. Hence, a fuzzy expert system was built with this
proposition in mind. The fuzzy expert system was able to replicate the output of
the decision rule rather satisfactorily.
109
The engineering college admission rate was assumed to be exogenous in the
model because the knowledge of the underlying system structure is unknown. In
order to make it endogenous, a fuzzy expert system was used to mimic the
behaviour of a policy maker deciding on the engineering college admission rate.
The method was tested previously using the generic supply chain model. It was
observed that the percentage change in engineering college admission rate was
correlated with the percentage change in demand. Inputs, membership functions
and a rule base were proposed for the construction of the fuzzy expert system.
Then, a particle swarm optimisation was carried out to optimise the fuzzy expert
system so as to obtain a good fit with respect to historical data. The fuzzy expert
system was able to replicate the engineering college admission rate well.
A glimpse into the possible mental model of the policy maker was made possible
by the rule base of the fuzzy expert system. It was observed that a cautious
approach was adopted when positive changes to the engineering college
admission rate were to be made. However, swift changes to the engineering
college admission rate were made when negative developments arise.
On top of decision policies, traditional forecasting models used in systems
dynamics were also shown to be easily replicated by a simple feedback structure
using a fuzzy expert system.
Based on what was learnt about fuzzy expert systems and its ability to mimic
decision policies and forecasting models, an attempt to synthesise a good decision
policy was conducted. The policy objective was defined to be the ratio between
Resident Engineers and EP Engineers. To achieve this policy objective, a policy
110
lever called the Approval Fraction was used. The Approval Fraction is the fraction
of EP Engineers that would be allowed into the system. The fuzzy decision policy
will control the Approval Fraction so as to achieve the policy objective.
Different inputs were used to calibrate the fuzzy decision policy. For each input,
the fuzzy decision policy was first calibrated under a deterministic setting where
there is no noise. Two optimisation criteria were used: Root Mean Squared Error
and the Worst Absolute Error. It was found that the calibrated decision policy
model for each scenario is able to satisfy the policy objective.
Noise was subsequently added to test for robustness. The fuzzy decision policies
calibrated under a noiseless setting are not able to handle the uncertainty and
noise introduced. Thus, a new way to calibrate for robustness has to be explored.
The system was shown to demonstrate monotonic behaviour and thus was
assumed to be so. Noise is added in the form of α*σ, where α is a constant and σ
represents one standard deviation of noise. As a result of the assumption of
monotonic behaviour, a fuzzy decision policy that is able to handle noise α*σ will
be able to handle any noise below α*σ. The fuzzy decision policy is then
calibrated by considering noise through particle swarm optimisation. The
maximum α for each particle in the particle swarm is found by testing the extreme
points. In the study, there are three noisy parameters and thus eight extreme
points. The PSO will then find the best set of parameters which allows us to
obtain the maximum α possible. It was found that after calibration, the fuzzy
decision policies became more robust for each type of input. They were able to
tolerate higher levels of noise than previously possible. Although better results
111
were obtained, more time was needed to compute and find the set of optimal
parameters.
A Linear Programming model was then used to approximate the model. This is
because a LP model can be solved quickly to find the maximum α for a set of
parameters. Thus, this should reduce the computational time regardless of the
number of noisy parameters. It was found that the fuzzy decision policy calibrated
using the LP model is less robust than the one calibrated using the original model.
This is expected as the LP model is only an approximation. However, the fuzzy
decision policy found is useful and can serve as a quick reference if needed.
6.2
Contributions
Firstly, a hypothesis of the structure of the engineering manpower supply and
demand system was proposed and validated using historical data. Scenario
analysis can then be carried out to study the system behaviour.
Secondly, the prototype model provides a basis and framework for the
construction of models for similar systems.
Thirdly, policy makers may be interested in the knowledge gained about the
system structure. Manpower and Education policy makers may only be experts in
their respective domains. Hence, insight about the system structure may shed light
on how their separate actions often affect one another and thus weakening or over
strengthening the desired effect of their policies. This can lead to more effective
policies from collaboration between manpower and education policymakers to
112
create combined manpower and education policies to achieve an overall impact on
the system.
Next, a fuzzy expert system approach was shown to be capable of replacing
unknown parts of the system structure. Fuzzy expert systems also replicate
forecasting models well. Hence, the approach may be adopted in the future if
similar problems arise so as to expedite the modelling process.
Lastly, fuzzy expert systems allow us to obtain a good decision policy with
relative ease. There is no need for complex or sophisticated methods in carrying
out the method. However, if the system is complex and the noisy parameters are
numerous, the computational time needed may become extremely long. Hence,
the use of linear programming models to approximate large scale models may be a
way to quicken the optimisation process.
6.3
Limitations
As discussed in the previous chapters, a recurring limitation in this study was the
lack of the historical data for calibration and validation. Although this is by no
means a suggestion of a flaw or mistake in the modelling methodology, more
historical data would ensure that the results and analyses of the model are more
meaningful and palatable to the critical eye.
Due to the sensitive nature of policy making, real knowledge or mental models of
policymakers are difficult to obtain. The proposed system structure is but a
hypothesis and other system structures can also be proposed. The results and
analyses of the model would have been more pertinent, more revealing and more
113
useful to actual policy making if real mental models about the system had been
used.
The prototype model is an aggregate model of the engineering supply and demand
system. It is evident that people in a varied context, for instance age group or job
positions etc, may react or behave differently over time. Thus, the model would
have been more complete and in-depth if a lower level of aggregation was used.
6.4
Suggestion for Future Research
Future research work could be to disaggregate the prototype model further to
account for different industries, age groups, pay scales etc. This would allow for
more in-depth knowledge about the system behaviour at a more micro level. The
disaggregation effort can be helped by the collection of more data since more
information about the disaggregated levels is needed. At the same time, data
further into the past should be collected so as to avoid the same limitations faced
by this study.
Next, engineering manpower demand, engineering college admission rate and
other exogenous factors can be modelled endogenously either by finding out their
underlying system structure or by attempting to replace them using A.I.
techniques. This would be interesting as more knowledge can obtained and bigger
picture scenario analyses can be conducted.
The prototype model can be applied to a different country to test whether the
system structure is country specific. If it is, the differences can be studied and
analysed and a more generic hypothesis can be proposed.
114
REFERENCES
Sterman, J. D. (2000) Business Dynamics: Systems Thinking and
Modeling for a Complex World. (Boston: Irwin/McGraw-Hill)
Senge, P.M. (1989) Organizational learning: New Challenges for System
Dynamics, D-memo 4023, System Dynamics Group, MIT Sloan School of
Management, Cambridge, MA.
Senge, P.M. (1990) The Fifth Discipline, New York: Doubleday
Anderson V., Johnson L. (1997) Systems Thinking Basics: From
Concepts to Causal Loops, Cambridge, MA : Pegasus Communications,
Inc.
Forrester, J.W. (1961), Industrial Dynamics, MIT Press: Cambridge, MA.
Toutkoushian, R. K. (2005) What can institutional research do to help
colleges meet the workforce needs of states and nations? Research in
Higher Education 46 (8), 955 – 984
Freeman, R. (1971) The Market for College-Trained Manpower: A Study
in the Economics of Career Choice, Harvard University Press, Cambridge,
MA.
Freeman, R. (1975) Supply and salary adjustments to the changing science
manpower market: physics, 1948--1973. American Economic Review
65(1): 27- 39.
Freeman, R. (1976) The Overeducated American, Academic Press, New
York.
Solow, Robert M. (1956) A Contribution to the Theory of Economic
Growth. Quarterly Journal of Economics 70 (1), 65 – 94.
Brody, A. (1970) Proportions, Prices and Planning (Amsterdam: North
Holland).
Forrester, J.W. (2003) Dynamic models of economic systems and
industrial organizations Syst. Dyn. Rev. 19, 331–345
Barth, E., Dale-Olsen, H. (1999) The employer‟s wage policy and worker
turnover. In: Haltiwanger, J.C., Lane, J.I., Spletzer, J.R., Theeuwes, J.J.M.,
Troske, K.R. (Eds.), The Creation and Analysis of Matched Employer–
115
Employee Data. Elsevier, Amsterdam, pp. 285– 312.
Montmarquette, C. & Cannings, K. & Mahseredjian, S. (2002) How do
young people choose college majors?, Economics of Education Review,
Elsevier, vol. 21(6), pages 543-556, December
Park, S.H. & Yeon S.J. & Kim S.W. & S.M. Lee (2008) A dynamic
manpower forecasting model for the information security industry,
Industrial & Systems Management Volume 108, Issue 3 Pg368 -384
Poole, D. & Mackworth, A. & Goebel, R. (1998). Computational
Intelligence: A Logical Approach. New York: Oxford University Press
Russell, S. J. & Norvig, P. (2003), Artificial Intelligence: A Modern
Approach , 2nd edition, (NJ: Prentice Hall)
Gallacher, J. (1989) Practical Introduction to Expert Systems,
Microprocessors and Microsystems, Vol 13 No 1 January/February,
Butterworth & Co. (Publishers) Ltd
Ghazanfari, M., Alizadeh, S. & Jafari M. (2002) Using Fuzzy Expert
System for Solving Fuzzy System Dynamics Models, EurAsia-ICT 2002,
Shiraz-Iran, 29-31 Oct
Kunsch, P. & Springael, J. (2006) Simulation with system dynamics and
fuzzy reasoning of a tax policy to reduce CO2 emissions in the residential
sector. European Journal of Operational Research 185 (2008), 1285-1299
Nebot, A., Cellier, F.E. & Linkens, D.A. (1995) Synthesis of an
anaesthetic agent administration system using fuzzy inductive reasoning,
Artificial Intelligence in Medicine 8(1996) pg147-166
Cybenko, G. (1989) Approximations by superposition of a sigmoidal
function, Mathematics of Control, Signals and Systems, 2, pg303-314
Wasserman, P. D. (1989) Neural Computing: Theory and Practice, Van
Nos-trand Reinhold, New York, 1989
White, H., and A. R. Gallant (1992) There Exists a Neural Network That
Does Not Make Avoidable Mistakes, in H. White (Ed.), Artificial Neural
Networks: Approximations and Learning Theory, Blackwell, Ox-ford, UK,
1992.
Ceccatto, H.A. & Navone H.D. & Waelbroeck H. (1998) Learning
Persistent Dynamics with Neural Networks, Neural Networks, Vol.11,
pp145-151
Moorthy, M., Cellier, F. & LaFrance, J. (1998) Predicting U.S. food
116
demand in the 20th century: A new look at System Dynamics, SPIE
Proceeding Series, Vol. 3369, 343(1998)
117
Appendix A: Stock-and-Flow Diagrams
Figure A.1 Stock and Flow Diagram for Manpower Adjustment Subsystem
118
Figure A.2 Stock and Flow Diagram for Job Vacancies Subsystem
Figure A.3 Stock and Flow Diagram for Wage Adjustment Subsystem
119
Figure A.4 Stock and Flow Diagram for Resident Engineers Subsystem
120
Figure A.5 Stock and Flow Diagram for EP Engineers Subsystem
Figure A.6 Stock and Flow Diagram for Engineering Education Subsystem
121
Appendix B: Equations for Engineering
Manpower Supply and Demand Model
(iThink)
Engineering Education Sector
Resident_Engineering_Student_Cohort(t) = Resident_Engineering_Student_Cohort(t dt) + (Engineering_Rate - College_Attrition_Rate - Graduation_Rate) * dt
INIT Resident_Engineering_Student_Cohort = 12000
INFLOWS:
Engineering_Rate = Input_Engineering_Rate*Resident_Fraction
OUTFLOWS:
College_Attrition_Rate = Graduation_Rate*College_Attrition_Fraction
Graduation_Rate = DELAY(Engineering_Rate*(1-College_Attrition_Fraction),4,3375)
College_Attrition_Fraction = 0
EP Engineers Sector
EP_Engineers(t) = EP_Engineers(t - dt) + (EP_Engineers_Hire_Rate EP_Engineers_Layoff_Rate - EP_Engineers_Resignation_Rate EP_to_Resident_Conversion_Rate) * dt
INIT EP_Engineers = 12460
INFLOWS:
EP_Engineers_Hire_Rate = Vacancies/Average_Time_Needed_to_Hire_EP_Engineer*(1STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009))+EP_Engineer_
Job_Vacancies/Average_Time_Needed_to_Hire_EP_Engineer*STEP(Fixed_Resident_Eng
ineer_vs_EP_Engineer_Job_Ratio_switch,2009)
OUTFLOWS:
EP_Engineers_Layoff_Rate =
MIN(Desired_Layoff_Rate*Willingness_to_Layoff_EP_Engineer,Maximum_EP_Engineers
_Layoff_Rate)
EP_Engineers_Resignation_Rate =
MAX(0,EP_Engineers/Average_EP_Engineer_Employment_Duration)
122
EP_to_Resident_Conversion_Rate = EP_Engineers*EP_to_Resident_Conversion_Fraction
Average_EP_Engineer_Employment_Duration =
Base_EP_Engineer_Employment_DurationSTEP(Step_Decrease_in_Average_EP_Engineer_Employment_Duration,2009)
Average_Time_Needed_to_Hire_EP_Engineer =
Base_Time_Needed_to_Hire_EP_Engineer+STEP(Step_Increase_in_Average_Time_Need
ed_to_Hire_EP_Engineer,2009)
Average_Time_Needed_to_Layoff_Engineer = 1/12
Base_EP_Engineer_Employment_Duration = 3
Base_Time_Needed_to_Hire_EP_Engineer = 6/12
EP_to_Resident_Conversion_Fraction = 0.1
Maximum_EP_Engineers_Layoff_Rate =
EP_Engineers/Average_Time_Needed_to_Layoff_Engineer
Willingness_to_Layoff_EP_Engineer = 1
Inputs and Data
Accelerated_Growth = 0
Accelerated_Growth_Simulator = RAMP(5000,2009)-RAMP(5000,2015)
Big_Recession = 0
Big_Recession_Simulator = RAMP(-5000,2009)-RAMP(-5000,2015)
Constant_Engineering_Rate = 3375
Constant_Engineering_Rate_Switch = 0
Engineering_Manpower_Demand = Engineering_Manpower_Target_2+
Manpower_Target_Ramp_Simulator*Manpower_Ramp_Switch+
Recession*Recession_Simulator+
Big_Recession*Big_Recession_Simulator+
Stagnant*0+
Accelerated_Growth*Accelerated_Growth_Simulator+
123
Growth*Growth_Simulator
Engineering_Rate_Step_Size = 0
Growth = 0
Growth_Simulator = RAMP(2500,2009)-RAMP(2500,2015)
Input_Engineering_Rate = Real_Engineering_Rate*Real_Engineering_Rate_Switch +
Constant_Engineering_Rate*Constant_Engineering_Rate_Switch +
Step_Engineering_Rate*Step_Engineering_Rate_Switch+
Ramp_Engineering_Rate*Ramp_Engineering_Rate_Switch
Manpower_Ramp_Gradient = 0
Manpower_Ramp_Switch = 1
Manpower_Target_Ramp_Simulator = RAMP(Manpower_Ramp_Gradient,2009)RAMP(Manpower_Ramp_Gradient,2015)
Ramp_Engineering_Rate = STEP(Engineering_Rate_Ramp_Gradient,2009) STEP(Engineering_Rate_Ramp_Gradient,2015)
Ramp_Engineering_Rate_Switch = 0
Real_Engineering_Rate_Switch = 1
Recession = 0
Recession_Simulator = RAMP(-2500,2009)-RAMP(-2500,2015)
Stagnant = 0
Step_Decrease_in_Average_EP_Engineer_Employment_Duration = 0
Step_Engineering_Rate = STEP(Engineering_Rate_Step_Size,2009)
Step_Engineering_Rate_Switch = 0
Step_Increase_in_Average_Time_Needed_to_Hire_EP_Engineer = 0
Engineering_Manpower_Target_2 = GRAPH(TIME)
Real_Engineering_Rate = GRAPH(TIME)
Real_Engineering_Wages = GRAPH(TIME)
Real_EP_Engineers = GRAPH(TIME)
124
Real_Resident_Engineers = GRAPH(TIME)
Manpower Adjustment Sector
Expected_Attrition_Rate(t) = Expected_Attrition_Rate(t - dt) +
(Change_in_Expected_Attrition_Rate) * dt
INIT Expected_Attrition_Rate = Attrition_Rate
INFLOWS:
Change_in_Expected_Attrition_Rate = (Attrition_RateExpected_Attrition_Rate)/Expected_Attrition_Rate_Smoothing_Time
Perceived_Gap(t) = Perceived_Gap(t - dt) + (Change_in_Perceived_Gap) * dt
INIT Perceived_Gap = Engineering_Manpower_Gap
INFLOWS:
Change_in_Perceived_Gap = (Engineering_Manpower_GapPerceived_Gap)/Perceived_Gap_Smoothing_Time
Adjustment_for_Manpower = Perceived_Gap/Desired_Manpower_Adjustment_Time
Attrition_Rate =
EP_Engineers_Resignation_Rate+Resident_Engineer_Resignation_Rate+Resident_Engin
eer_Retirement_Rate
Desired_Hiring_Rate = Adjustment_for_Manpower+Expected_Attrition_Rate
Desired_Layoff_Rate = MAX(0,-Desired_Hiring_Rate)
Desired_Manpower_Adjustment_Time = 2/12
Engineering_Manpower_Gap = Engineering_Manpower_DemandEngineering_Manpower_Supply
Engineering_Manpower_Supply = EP_Engineers+Resident_Engineers
Expected_Attrition_Rate_Smoothing_Time = 1
Normalised_Gap = Perceived_Gap/Reference_Gap
Perceived_Gap_Smoothing_Time = 2/12
Reference_Gap = 1000
Resident Engineers and Education Sector
125
Resident_Engineers(t) = Resident_Engineers(t - dt) + (Resident_Engineer_Hire_Rate +
Residency_Take_Up_Rate - Resident_Engineer_Layoff_Rate Resident_Engineer_Resignation_Rate - Resident_Engineer_Retirement_Rate) * dt
INIT Resident_Engineers = 50185
INFLOWS:
Resident_Engineer_Hire_Rate =
Vacancies/Average_Time_Needed_to_Hire_Resident_Engineer*(1STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009))
+Resident_Engineer_Job_Vacancies/Average_Time_Needed_to_Hire_Resident_Enginee
r*STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009)
Residency_Take_Up_Rate = EP_to_Resident_Conversion_Rate
OUTFLOWS:
Resident_Engineer_Layoff_Rate = MIN(Desired_Layoff_Rate,Maximum_Layoff_Rate)
Resident_Engineer_Resignation_Rate =
MAX(0,Resident_Engineers/Average_Resident_Engineer_Employment_Duration)
Resident_Engineer_Retirement_Rate =
MAX(0,Resident_Engineers)/Average_Resident_Engineer_Career_Duration
Resident_Jobseekers(t) = Resident_Jobseekers(t - dt) + (Resident_Engineer_Layoff_Rate
+ Resident_Engineer_Resignation_Rate + Fresh_Graduates_Entrance_Rate Leakage_Rate - Resident_Engineer_Hire_Rate) * dt
INIT Resident_Jobseekers = 700
INFLOWS:
Resident_Engineer_Layoff_Rate = MIN(Desired_Layoff_Rate,Maximum_Layoff_Rate)
Resident_Engineer_Resignation_Rate =
MAX(0,Resident_Engineers/Average_Resident_Engineer_Employment_Duration)
Fresh_Graduates_Entrance_Rate = Graduation_Rate
OUTFLOWS:
Leakage_Rate = Resident_Jobseekers*Leakage_Fraction
Resident_Engineer_Hire_Rate =
Vacancies/Average_Time_Needed_to_Hire_Resident_Engineer*(1STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009))
126
+Resident_Engineer_Job_Vacancies/Average_Time_Needed_to_Hire_Resident_Enginee
r*STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009)
Average_Resident_Engineer_Career_Duration = 45
Average_Resident_Engineer_Employment_Duration = 6
Average_Time_Needed_to_Hire_Resident_Engineer = 2/12
Base_Fractional_Leakage_Rate = 0.4
Leakage_Fraction =
Base_Fractional_Leakage_Rate*Effect_of_Relative_Wage_on_Leakage_Rate
Maximum_Layoff_Rate =
Resident_Engineers/Average_Time_Needed_to_Layoff_Engineer
Effect_of_Relative_Wage_on_Leakage_Rate = GRAPH(Relative_Wage)
(0.00, 2.49), (0.5, 2.20), (1.00, 1.00), (1.50, 0.675), (2.00, 0.537), (2.50, 0.35), (3.00,
0.263), (3.50, 0.188), (4.00, 0.0875), (4.50, 0.0375), (5.00, 0.00)
Vacancies Sector
EP_Engineer_Job_Vacancies(t) = EP_Engineer_Job_Vacancies(t - dt) +
(EP_Engineer_Job_Vacancy_Creation_Rate - EP_Engineer_Job_Vacancy_Rate EP_Engineer_Job_Vacancy_Cancellation_Rate) * dt
INIT EP_Engineer_Job_Vacancies = 1895*Resident_Engineer_vs_EP_Engineer_Job_Ratio
INFLOWS:
EP_Engineer_Job_Vacancy_Creation_Rate = Desired_Vacancy_Creation_Rate*(1Resident_Engineer_vs_EP_Engineer_Job_Ratio)*(STEP(Fixed_Resident_Engineer_vs_EP_
Engineer_Job_Ratio_switch,2009))
OUTFLOWS:
EP_Engineer_Job_Vacancy_Rate =
EP_Engineers_Hire_Rate*STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_sw
itch,2009)
EP_Engineer_Job_Vacancy_Cancellation_Rate = Desired_Vacancy_Cancellation_Rate*(1Resident_Engineer_vs_EP_Engineer_Job_Ratio)
Resident_Engineer_Job_Vacancies(t) = Resident_Engineer_Job_Vacancies(t - dt) +
(Resident_Engineer_Job_Vacancy_Creation_Rate -
127
Resident_Engineer_Job_Vacancy_Closure_Rate Resident_Engineer_job_Vacancy_Cancellation_Rate) * dt
INIT Resident_Engineer_Job_Vacancies =
1895*Resident_Engineer_vs_EP_Engineer_Job_Ratio
INFLOWS:
Resident_Engineer_Job_Vacancy_Creation_Rate =
Desired_Vacancy_Creation_Rate*Resident_Engineer_vs_EP_Engineer_Job_Ratio*STEP(F
ixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009)
OUTFLOWS:
Resident_Engineer_Job_Vacancy_Closure_Rate =
Resident_Engineer_Hire_Rate*STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Rati
o_switch,2009)
Resident_Engineer_job_Vacancy_Cancellation_Rate =
Desired_Vacancy_Cancellation_Rate*Resident_Engineer_vs_EP_Engineer_Job_Ratio
Vacancies(t) = Vacancies(t - dt) + (Vacancy_Creation_Rate - Vacancy_Closure_Rate Vacancy_Cancellation_Rate) * dt
INIT Vacancies = 930
INFLOWS:
Vacancy_Creation_Rate = MAX(0,Desired_Vacancy_Creation_Rate)*(1STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009))
OUTFLOWS:
Vacancy_Closure_Rate = (EP_Engineers_Hire_Rate+Resident_Engineer_Hire_Rate)*(1STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009))
Vacancy_Cancellation_Rate =
MIN(Maximum_Vacancy_Cancellation_Rate,Desired_Vacancy_Cancellation_Rate)*(1STEP(Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch,2009))
Desired_Vacancy_Cancellation_Rate = MAX(0,-Desired_Vacancy_Creation_Rate)
Desired_Vacancy_Creation_Rate = Desired_Hiring_Rate
Fixed_Resident_Engineer_vs_EP_Engineer_Job_Ratio_switch = 0
Maximum_Vacancy_Cancellation_Rate = Vacancies/Time_needed_to_cancel_Vacancy
Resident_Engineer_vs_EP_Engineer_Job_Ratio = 0.5
128
Time_needed_to_cancel_Vacancy = 0.5/12
Wage Adjustment Sector
Engineering_Wage(t) = Engineering_Wage(t - dt) + (Change_in_Engineering_Wage) * dt
INIT Engineering_Wage = 3551
INFLOWS:
Change_in_Engineering_Wage = (Desired_Engineering_WageEngineering_Wage)/Wage_Adjustment_Smoothing_Time
Desired_Engineering_Wage =
Effect_of_Gap_on_Desired_Engineering_Wage*Engineering_Wage
Input_Non_Engineering_Wage = 4000 +
RAMP(Non_Engineering_Wage_Ramp_Gradient,2009) - RAMP
(Non_Engineering_Wage_Ramp_Gradient,2013)
Non_Engineering_Wages = Input_Non_Engineering_Wage
Non_Engineering_Wage_Ramp_Gradient = 0
Relative_Wage = Engineering_Wage/Non_Engineering_Wages
Wage_Adjustment_Smoothing_Time = 1
Effect_of_Gap_on_Desired_Engineering_Wage = GRAPH(Normalised_Gap)
(-10.0, 0.00), (-9.50, 0.00), (-9.00, 0.04), (-8.50, 0.07), (-8.00, 0.13), (-7.50, 0.19), (-7.00,
0.3), (-6.50, 0.45), (-6.00, 0.57), (-5.50, 0.67), (-5.00, 0.75), (-4.50, 0.82), (-4.00, 0.85), (3.50, 0.9), (-3.00, 0.94), (-2.50, 0.94), (-2.00, 0.96), (-1.50, 0.97), (-1.00, 0.98), (-0.5, 1.00),
(0.00, 1.00), (0.5, 1.06), (1.00, 1.06), (1.50, 1.06), (2.00, 1.06), (2.50, 1.12), (3.00, 1.14),
(3.50, 1.18), (4.00, 1.19), (4.50, 1.20), (5.00, 1.22), (5.50, 1.23), (6.00, 1.24), (6.50, 1.26),
(7.00, 1.28), (7.50, 1.33), (8.00, 1.37), (8.50, 1.43), (9.00, 1.48), (9.50, 1.59), (10.0, 1.67)
Not in a sector
Engineering_Rate_Ramp_Gradient = 0
129
Appendix C: One Way Sensitivity Analysis
Figure C. 1 Average Resident Engineer Career Duration
Figure C. 2 Average Resident Engineer Job Duration
130
Figure C. 3 Average EP Engineer Employment Duration
Figure C. 4 Average Time Needed to Hire a Resident Engineer
131
Figure C. 5 Average Time Needed to Hire an EP Engineer
Figure C. 6 Percentage of EP Engineers to Resident
132
Appendix D: Equations for Supply Chain
Model (iThink)
Engineering_Student_Cohort(t)
=
Engineering_Student_Cohort(t
(Engineering_Admission_Rate - Graduating_Rate) * dt
-
dt)
+
INIT Engineering_Student_Cohort = Desired_Engineering_Student_Cohort
INFLOWS:
Engineering_Admission_Rate = Indicated_Admission_Rate
OUTFLOWS:
Graduating_Rate = Engineering_Student_Cohort/Graduation_Lag
Resident_Jobseekers(t) =
Resident_Hiring_Rate) * dt
Resident_Jobseekers(t
-
dt)
+
(Graduating_Rate
-
INIT Resident_Jobseekers = 100
INFLOWS:
Graduating_Rate = Engineering_Student_Cohort/Graduation_Lag
OUTFLOWS:
Resident_Hiring_Rate = Job_Vacancies/Time_Needed_to_Hire_Resident_Engineer
Adjustment_for_Stock
=
(Desired_Resident_JobseekersResident_Jobseekers)/Resident_Jobseekers_Adjustment_Time
Adjustment_for_Student_Cohort
=
(Desired_Engineering_Student_CohortEngineering_Student_Cohort)/Student_Cohort_Adjustment_Time
Desired_Admission_Rate = Adjustment_for_Stock+Expected_Hiring_Rate
Desired_Engineering_Student_Cohort = Desired_Admission_Rate*Graduation_Lag
Desired_Resident_Jobseekers = 100
Expected_Hiring_Rate = Resident_Hiring_Rate
Graduation_Lag = 4
Increase_in_Job_Vacancies = STEP(-0.076659186,5)+
STEP(0.090918951,25)+
133
STEP(0.099212266,45)+
STEP(-0.005225684,65)+
STEP(-0.021135969,85)+
STEP(-0.039995384,105)+
STEP(-0.016515175,125)+
STEP(-0.054663841,145)+
STEP(-0.089321595,165)+
STEP(-0.079112602,185)+
STEP(0.022630927,205)+
STEP(0.075149899,225)+
STEP(-0.080937321,245)+
STEP(-0.056377514,265)+
STEP(0.036312507,285)+
STEP(-0.067193769,305)+
STEP(-0.062215011,325)+
STEP(-0.031092271,345)+
STEP(0.013087397,365)+
STEP(0.030135728,385)+
STEP(0.073644824,405)+
STEP(-0.068674593,425)+
STEP(-0.071694605,445)+
STEP(0.041834657,465)+
STEP(0.033879087,485)+
STEP(-0.064414467,505)+
STEP(-0.096350565,525)+
STEP(0.076275034,545)+
134
STEP(-0.084087628,565)+
STEP(0.079913142,585)+
STEP(-0.075238021,605)+
STEP(0.05611526,625)+
STEP(0.096816835,645)+
STEP(-0.088353501,665)+
STEP(0.064418828,685)+
STEP(-0.064572306,705)+
STEP(0.064886142,725)+
STEP(-0.062995963,745)+
STEP(-0.025082719,765)+
STEP(-0.090097429,785)+
STEP(0.029061962,805)+
STEP(0.077164833,825)+
STEP(-0.003405806,845)+
STEP(0.014790499,865)+
STEP(0.063149093,885)+
STEP(-0.090313161,905)+
STEP(0.02594251,925)+
STEP(0.024154861,945)+
STEP(0.008210307,965)+
STEP(0.08923504,985)+
STEP(0.026161529,1005)+
STEP(0.093424377,1025)+
STEP(-0.004179313,1045)+
STEP(0.09463104,1065)+
135
STEP(0.095949241,1085)+
STEP(-0.036548126,1105)+
STEP(0.083398411,1125)+
STEP(0.047987285,1145)+
STEP(0.056397441,1165)+
STEP(0.018045889,1185)+
STEP(-0.014418319,1205)+
STEP(0.029297415,1225)+
STEP(-0.060036183,1245)+
STEP(0.01195766,1265)+
STEP(0.028926198,1285)+
STEP(0.034989258,1305)+
STEP(-0.087227185,1325)+
STEP(-0.011110701,1345)+
STEP(-0.024004974,1365)+
STEP(-0.060380625,1385)+
STEP(0.059934226,1405)+
STEP(-0.092684048,1425)+
STEP(-0.01840596,1445)+
STEP(0.099249377,1465)+
STEP(0.043254494,1485)+
STEP(0.073722501,1505)+
STEP(0.010718202,1525)+
STEP(-0.002714666,1545)+
STEP(0.098600895,1565)+
STEP(0.017060387,1585)+
136
STEP(-0.039912786,1605)+
STEP(-0.038380148,1625)+
STEP(-0.071083586,1645)+
STEP(-0.021023337,1665)+
STEP(-0.032779994,1685)+
STEP(-0.020645386,1705)+
STEP(-0.044354614,1725)+
STEP(-0.096539182,1745)+
STEP(0.011461616,1765)+
STEP(-0.027018323,1785)+
STEP(-0.023140189,1805)+
STEP(0.038234998,1825)+
STEP(0.01267485,1845)+
STEP(-0.065939164,1865)+
STEP(-0.006187541,1885)+
STEP(0.095816689,1905)+
STEP(-0.01447732,1925)+
STEP(-0.023632264,1945)+
STEP(0.05437677,1965)+
STEP(0.058425518,1985)
Indicated_Admission_Rate = Adjustment_for_Student_Cohort+Desired_Admission_Rate
Job_Vacancies = (1+Increase_in_Job_Vacancies)*100
Percentage_Change_in_Demand = RANDOM(-0.1,0.1)
Resident_Jobseekers_Adjustment_Time = 1
Student_Cohort_Adjustment_Time = 0.75
Time_Needed_to_Hire_Resident_Engineer = 2/12
137
Appendix E: Training Data Generated by
Supply Chain Model
negative %Change (Resident Jobseekers)
40
30
20
10
0
0
500
1000
1500
-10
-20
-30
Figure E. 1 Percentage Change in Resident Jobseekers
%Change (Resident Hire Rate)
50
40
30
20
10
0
-10
0
200
400
600
800
1000
1200
1400
1600
-20
-30
-40
Figure E. 2 Percentage Change in Resident Hiring Rate
1800
138
%Change (Resident Student Cohort)
20
15
10
5
0
0
500
1000
1500
-5
-10
-15
-20
Figure E. 3 Percentage Change in Resident Student Cohort
%Change (Engineering Admission Rate)
100
80
60
40
20
0
0
500
1000
1500
-20
-40
-60
Figure E. 4 Percentage Change for Engineering College Admission Rate
139
Appendix F: Membership Function
Parameters for Fuzzy Expert System (Supply
Chain Model)
Membership
Function
Number
1
2
3
4
5
6
7
8
9
10
11
Left
-60
-33.6
7.38
-30
-6.02
3.33
-95
-51.34
-45
4.22
27.62
Centre
-25.0
0
21.81
-11.63
0
11
-47.02
-18.14
0
45
53.210
Right
-4.54
33.6
60
-4.95
6.02
30
-38.07
-1.77
45
55
95
Table F. 1 Optimised Membership Functions (Supply Chain Model)
140
Appendix G: MATLAB Model of Engineering
Manpower Supply and Demand System
Figure G. 1 Manpower Adjustment Subsystem
141
Figure G. 2 Job Vacancies Subsystem
Figure G. 3 Wage Adjustment Subsystem
142
Figure G. 4 Resident Engineers Subsystem
143
Figure G. 5 EP Engineers Subsystem
Figure G. 6 Engineering Education Subsystem
144
Appendix H: MATLAB Model of Fuzzy
Expert System
Figure H. 1 MATLAB Model of Fuzzy Expert System
145
Appendix I: Membership Function
Parameters for Fuzzy Expert System
(Prototype Model)
Membership
Function
Number
1
2
3
4
5
6
7
8
9
Left
Centre
Right
-25.00
-6.40
0.00
-21.79
-12.00
0.00
-18.41
-14.71
12.00
-8.21
0.00
9.00
-10.00
0.00
12.00
-13.00
-6.58
33.18
-0.12
3.08
25.00
-1.22
9.81
25.00
-2.87
20.29
34.73
Table I. 1 Membership Function Parameters (1st Estimate, Prototype Model)
Membership
Function
Number
1
2
3
4
5
6
7
8
9
Left
Centre
Right
-25.00
-4.26
0.12
-25.00
-12.00
2.00
-16.15
-15.49
12.43
-6.75
0.00
10.16
-10.54
0.00
11.65
-14.00
-7.72
32.53
-2.00
3.13
25.00
-0.93
9.35
25.00
-3.70
19.97
34.23
Table I. 2 Membership Function Parameters (Optimised, Prototype Model)
146
Appendix J: Test Inputs for Fuzzy
Forecasting Model
Figure J. 7 Cyclical Demand
Figure J. 8 Saw-tooth Demand
147
Figure J. 9 Pulse Shape Demand
Figure J. 10 Mixed Shape Demand
148
Appendix K: Engineering Manpower
Demand Inputs
Figure K.1 Cyclical Input
Figure K.2 Cyclical Ramp Input
149
Figure K.3 Ramp Input
150
Appendix L: Model Output from Extreme
Points (Ramp Input)
1.15
1.1
Output 1
1.05
Output 2
Output 3
1
Output 4
0.95
Output 5
Output 6
0.9
Output 7
0.85
Output 8
0.8
0
20
40
60
80
100
Figure L. 1 Model Output from Extreme Points (Ramp Input)
151
Appendix M: Simplified Model (Simulink)
Figure M. 1 Simplified Model ( Simulink version)
152
Appendix N: MATLAB Code for LP Model
function [a, RE, EP] = LPModel4a(
cgrad,dgrad,lowerlimit,upperlimit)
% begin rome
tic;
rome_begin;
h = rome_model ( 'Engineering Manpower'); % Create Rome Model
T=361; % trial time horizon
% Define decision variables
d1=zeros(T,1);
RE1=zeros(T+1,1);
EP1=zeros(T+1,1);
newvar a %alpha to be maximized
newvar RE(T+1) %nominal RE plus change in RE
newvar EP(T+1) %nominal EP plus change in EP
newvar b1(T+1) %change in RE
newvar b2(T+1) %change in EP
newvar a21(T+1) %auxiliary variable for change in RE
newvar a22(T+1) %auxiliary variable for change in RE
rome_maximize(a); %objective maximize alpha
rome_box(a,lowerlimit,upperlimit); % trial values for the
possible range of alpha
%nominal demand (d1(t)) and change in demand (d1(t))
%change in demand for period 1:T
%creation of demand input
delay = 80;
for i = 1:delay
d1(i)=60000;
end
for t=delay+1:T
d1(t)=3000*sin(((t-delay)*.125/3))+60000;
end
%Parameters for nominal RE and EP
tthe=.5;
aejd=3;
E2Rf=.1;
tthr=.16667;
arcd=45;
arjd=6;
af=1;
%nominal values (initial for ER and EP)
RE1(1)=52866;
EP1(1)=7134;
% constraint for the nominal values of RE and EP (denoted by RE1
and EP1)
%d1 is also the nominal value of demand
for t=2:T
153
RE1(t)=(RE1(t-1)*(1-(1/tthr*0.125)-(1*0.125/arjd)(1*0.125/arcd))+EP1(t-1)*(E2Rf*0.125(1*0.125/tthr))+(1*0.125/tthr)*d1(t-1));
EP1(t)=(RE1(t-1)*(-1*0.125/tthe)*af+EP1(t-1)*(1-((af)*0.125/tthe)(1*0.125/aejd)-(E2Rf*0.125))+(af*0.125/tthe)*d1(t-1));
end
c=cgrad;
d= dgrad;
%c=1.6374e-05;
%d=-1.66976e-05;
%auxiliary equations for change in RE and EP
for t=delay+1:T
rome_constraint(a21(delay)==0); %for EP
rome_constraint(a21(t)==((((-c*RE1(t-1))/tthe)+(1-((d*EP1(t1))/tthe)-(1/aejd)-(E2Rf)))^(t-delay))*((1/tthe)*a*500)+(-EP1(t1)*a*0.001)); % change in EP
rome_constraint(a22(delay)==0); % change in RE
rome_constraint(a22(t)==((1/tthr)*a*500)+(EP1(t-1)*a*0.001));
end
% constraints for change in RE and EP
rome_constraint(b1(delay)==0);
rome_constraint(b2(delay)==0);
for t=delay+1:T
rome_constraint(b1(t)==a22(t-1)+a*500);
rome_constraint(b2(t)==a21(t-1)+a*500);
end
%RE
%EP
for t=delay+1:T
rome_constraint(-1=b1(t)*c+d*b2(t)+b1(t-1)*c+d*b2(t-1));
end
%constraint for total RE and EP (nominal plus change)
rome_constraint(RE(1)==52866);
rome_constraint(EP(1)==7143);
for t=2:delay
rome_constraint(RE(t)==(RE1(t)));
rome_constraint(EP(t)==(EP1(t)));
end
for t=delay+1:T
rome_constraint(RE(t)==(RE1(t)+b1(t)));
rome_constraint(EP(t)==(EP1(t)+b2(t)));
end
%constraint for range
rome_constraint(0=0);
rome_constraint(RE(1:T)>=0);
rome_constraint(EP(1:T)>=0);
% solve
h.solve;
a =h.objective;
EP=h.eval(((EP(1:T))));
RE=h.eval(((RE(1:T))));
b1=h.eval(((b1(1:T))));
154
b2=h.eval(((b2(1:T))));
rome_end;
%
%
%
%
%
%
disp(a);
a
b1
b2
EP
RE
toc;
[...]... application of A.I techniques in system dynamics is relatively new and the research in the area is somewhat limited 1.3 Objectives This project aims to build a prototype model of the engineering manpower supply and demand system using a system dynamics approach This prototype model will take into account the market supply and demand dynamics as well as the human aspects of supply and demand It is hoped... concerning manpower supply and demand, the human element within the system and some possible A.I techniques that can be applied 2.1 Perspectives related to Manpower Supply and Demand 2.1.1 Economics Perspective Economists seek to explain the sufficiency of manpower in different sectors and its effect on economic development and growth Some of the common theories or models are the Theory of Markets... according to gender and race 10 2.1.3 System Dynamics Perspective Some system dynamics models for manpower supply and demand have been built and can be used as a guide to the important parameters within the model Park, Yeon and Kim (2008) built a manpower planning model for the information security industry of Korea In their paper, they have built a hypothesized manpower demand -supply system using... could be due to various soft factors such as perceived wage equity between competing 1 2 professions, job prestige etc Hence, it is clear that when looking at the engineering manpower system, it is important to not only consider the economics of demand and supply, but the social element as well 1.2 Problem Statement While the importance of the engineering manpower supply and demand is evident, knowledge... dynamics of engineering manpower adjustment between demand and supply can be described as shown in the Figure 3.2 Figure 3 2 Causal Loop Diagram for Manpower Adjustment Engineering Manpower Demand can be understood as the number of engineers required by the market at a given point in time This variable is assumed to be exogenous in the model Correspondingly, Engineering Manpower Supply is the number of engineers... attractiveness of a profession plays an important role in determining the supply of manpower to the workforce This is especially true for highly skilled labour where the opportunity cost of training is high The supply of manpower is affected by two main factors, the retention of manpower and students joining the labour pool Firstly, it is a widely accepted fact that higher wages result in lower worker turnover and. .. circumvent the problem The application of A.I tools shows a lot of promise and potential in helping the modelling process become smoother or more constructive Chapter 3 Prototype Model This chapter details the building of the prototype model using system dynamics methodology A hypothesis of the system structure for engineering manpower supply and demand is proposed and its results are compared with historical... relationships and equations between them 2.3 Modelling: A Synthesis of Ideas Existing system dynamics and economics models on manpower planning have been reviewed It is possible to draw inspiration from them and to calibrate and change these models to suit the purposes of the project Humans are very much a part of real world systems and human decision making play a key role in the behaviour of such systems... Engineering Manpower Gap is the difference between Engineering Manpower Demand and Engineering Manpower Supply This gap is interpreted as the shortfall/excess in the number of engineers Also, it is unrealistic to expect employers in the market to be aware of the exact manpower gap at any given time Hence, the variable Perceived Manpower Gap is to model the difference between employers‟ perceived engineering manpower. .. theories and models focus on the supply and demand for labour with equilibrium being determined by hard facts such as wages and growth They neglect to address the possible interactions between individual actors in the system, for example students and schools, graduating students and career choice, foreign workers and local workforce etc These interactions can be of specific interest to policy makers and ... concerning manpower supply and demand, the human element within the system and some possible A.I techniques that can be applied 2.1 Perspectives related to Manpower Supply and Demand 2.1.1 Economics... a prototype model of the engineering manpower supply and demand system using a system dynamics approach This prototype model will take into account the market supply and demand dynamics as well... Figure H.1 MATLAB Model of Fuzzy Expert System 144 Figure J.1 Cyclical Demand 146 Figure J.2 Saw-tooth Demand 146 Figure J.3 Pulse Shape Demand 147 Figure J.4 Mixed Shape Demand 147 Figure K.1 Cyclical