• No results found

Bachelor Degree Project A comparison of simulation tools for supply chain management

N/A
N/A
Protected

Academic year: 2021

Share "Bachelor Degree Project A comparison of simulation tools for supply chain management"

Copied!
95
0
0

Loading.... (view fulltext now)

Full text

(1)

Author: Shishengxiong Zhong and

Jinzhe Zhao

Supervisor: Sabri Pllana

Semester: VT 2020

Bachelor Degree Project

A comparison of simulation tools

for supply chain management

(2)

Abstract

This report provides a comparison of discrete-event simulation tools for supply chain models. We use different simulation tools (Arena and AnyLogic) to analyze and inspect the C14 supply chain management benchmark, as well as, a real-world busi-ness supply chain model that is provided by Vantai company in China. In this study, we consider different aspects of these simulation tools (such as, the capability of discrete-event simulation, visualization, simulation efficiency and accuracy, and de-bugging) to explore their advantages and disadvantages. We hope that our simulation results will have a positive impact on the supply chain management of the companies that provided us with data for this study; furthermore, the comparison results may be useful to developers and researchers in future simulation studies.

Keywords:Supply Chain Management; Discrete-Event Simulation; Arena

(3)

Preface

We like to use this opportunity to thank our supervisor Sabri Pllana for the opportunity and the research topic along with the aid he provides for us to proceed and accomplish this research. We would also like to thank the China Vantai company for sharing their data and support us to build our supply chain model and the research. Both Sabri and Vantai company have been encouraging and helpful for us during past few months. We would not be able to finish our degree project without their help.

(4)

Contents

List of Figures

List of Tables

1 Introduction 1

1.1 Background . . . 2

1.1.1 The Anylogic simulation software . . . 2

1.1.2 The Arena simulation software . . . 2

1.1.3 Discrete-event simulation . . . 3

1.1.4 C14 Supply Chain Management . . . 3

1.1.5 Vantai Supply Chain Model . . . 3

1.2 Related work . . . 4

1.2.1 C14 Supply Chain Management Benchmark . . . 4

1.2.2 C14 Supply Chain Management - AnyLogic 4.0 . . . 4

1.2.3 An Object-oriented Approach to ARGESIM Benchmark C14 ’Sup-ply Chain’ using MATLAB . . . 5

1.2.4 Comparison of discrete event simulation tools in an academic en-vironment . . . 5 1.3 Problem formulation . . . 6 1.4 Motivation . . . 6 1.5 Objectives . . . 7 1.6 Scope/Limitation . . . 7 1.7 Target group . . . 7 1.8 Outline . . . 8 2 Method 9 2.1 Controlled variables and experimental environment . . . 10

2.2 The first controlled experiment . . . 10

2.2.1 Objective: C14 supply chain management . . . 11

2.2.2 Dependent variables: Expected modelling results . . . 16

2.3 The second controlled experiment . . . 16

2.3.1 Objective: Vantai supply chain model . . . 16

2.3.2 Dependent variables: Expected modelling results . . . 23

2.4 Comparisons metrics . . . 24

2.5 Reliability and Validity . . . 26

2.6 Threat to validity . . . 27

(5)

3 Implementation 28

3.1 Implementation of C14 supply chain management . . . 28

3.1.1 Simulation model built by Anylogic . . . 28

3.1.2 The simulation results outputted by Anylogic . . . 38

3.1.3 Simulation model built by Arena . . . 40

3.1.4 The simulation results outputted by Arena . . . 44

3.2 Implementation of Vantai supply chain model . . . 46

3.2.1 Simulation model built by Anylogic . . . 46

3.2.2 The simulation results outputted by Anylogic . . . 54

3.2.3 Simulation model built by Arena . . . 55

3.2.4 The simulation results outputted by Arena . . . 60

4 Comparison Results of Simulation Tools 61 4.1 Tool capabilities with respect to discrete-event simulation . . . 61

4.2 Visualization . . . 65 4.3 Simulation efficiency . . . 71 4.4 Simulation accuracy . . . 76 4.5 Debugging . . . 78 5 Analysis 79 6 Discussion 82 7 Conclusion 83 7.1 Future work . . . 84 References 85 A Appendix A

(6)

List of Figures

2.1 Controlled experiments overview . . . 9

2.2 JRE version . . . 10

2.3 Computer configuration . . . 10

2.4 the relationship between factory, distributor and wholesaler in C14 . . . . 11

2.5 Vantai model relationthips . . . 17

3.6 Product Agent . . . 30

3.7 Factory Agent . . . 30

3.8 The produce function of factory . . . 31

3.9 Distributor Agent . . . 32

3.10 The function buy of distributor . . . . 33

3.11 The function getStorage of distributor . . . . 34

3.12 The function sell of distributor . . . . 34

3.13 The function addStorageFee of distributor . . . . 35

3.14 Wholesaler Agent . . . 35

3.15 The method that wholesalers order product . . . 36

3.16 Main Agent . . . 37

3.17 the Main model . . . 41

3.18 FactoryProduce sub-model . . . 42 3.19 DistributorBuy sub-model . . . 42 3.20 WholesalerBuy sub-model . . . 43 3.21 ClearStock sub-model . . . 43 3.22 TaskA . . . 44 3.23 TaskB . . . 44 3.24 TaskC . . . 45 3.25 Factory Agent . . . 46

3.26 The produce function of factory . . . 47

3.27 Distributor Agent . . . 48

3.28 The function buy of distributor . . . . 50

3.29 The function getStorage of distributor . . . . 51

3.30 The function sell of distributor . . . . 51

3.31 The function addStorage of distributor . . . . 52

3.32 The function record of distributor . . . 52

3.33 Wholesaler Agent . . . 52

3.34 The function buy of wholesaler . . . . 53

3.35 The Vantai simulation results outputted by Anylogic . . . 54

(7)

3.37 FactoryProduce sub-model . . . 58

3.38 FactoryDiscount sub-model . . . 58

3.39 DistributorBuy sub-model . . . 59

3.40 WholesalerBuy sub-model . . . 59

3.41 The Vantai simulation results outputted by Arena . . . 60

4.42 the event component of Anylogic . . . 62

4.43 the Create module of Arena . . . 62

4.44 simulate The orders from the distributors with Anylogic . . . 63

4.45 simulate The orders from distributors with Arena . . . 64

4.46 Anylogic UI overall . . . 65

4.47 Arena UI overall . . . 66

4.48 Factory attributes in Anylogic . . . 67

4.49 the variables list of Arena . . . 68

4.50 Anylogic Chart . . . 69

4.51 Arena Chart . . . 69

4.52 Automatically generated report by Arena . . . 70

4.53 The limitation of Arena free version(1) . . . 72

4.54 The limitation of Arena free version(2) . . . 72

4.55 AppTimer configuration for Anylogic . . . 73

4.56 AppTimer configuration for Arena . . . 74

4.57 Anylogic operating screen . . . 74

4.58 Arena operating screen . . . 75

4.59 The order comparison of C14 between Anylogic and Arena . . . 76

4.60 The order comparison of Vantai between Anylogic and Arena . . . 76

4.61 The result of random integer result by Anylogic . . . 77

4.62 The result of random integer by Arena . . . 77

4.63 Error report of Anylogic . . . 78

4.64 Error report of Arena . . . 78

1.65 Anylogic random test code . . . A 1.66 Arena random test code . . . A

List of Tables

1.1 Project objectives . . . 7

2.2 Factories production . . . 12

2.3 Supply lead time . . . 12

2.4 Vantai products . . . 17

(8)

2.6 Vantai distributor exclusive . . . 18

2.7 Discount for distributors . . . 18

2.8 The supply lead time between distributor and factory . . . 19

2.9 The supply lead time between distributor and wholesaler . . . 19

3.10 AnyLogic simulation agents for C14. . . 29

3.11 AnyLogic simulation results for C14. . . 39

3.12 Arena simulation variables for C14. . . 40

3.13 Arena simulation results for C14. . . 45

3.14 Arena simulation variables for Vantai . . . 55

4.15 Anylogic opening time . . . 73

4.16 Arena opening time . . . 74

4.17 Anylogic running time . . . 75

4.18 Arena running time . . . 75

(9)

1

Introduction

For a mature modern business system, outstanding management on the supply chain can effectively reduce the cost and increase its profit margins, thence, the research on the supply chain has extraordinary important value. However, the more mature supply chain is, the more intricate it will be [1]. In this case, simulation is frequently regarded as the suitable method for supporting the management decision making or researching on supply chain [2]. Currently, there are diverse simulation tools in the technology market. These simulation tools are used in different fields, their simulation capabilities are various when targeting different types of models. In the face of such massive simulation software, it may become a new problem that how to compare and select the appropriate simulator to make the research against the supply chain management more efficient. Based on this above issue, we started this research.

At the beginning of this study, we found a phenomenon: In many different types of simulation research [3, 4, 5], the researchers usually use the discrete-event simulation to express the changes or events movements of the modelling system based on system time. This simulation is to abstract each system events into discrete events which triggered by the system time. [6, 7] This advanced method fits the supply chain simulation very well, after referred to other simulations on the supply chain [3, 8], we selected two popular simulation tools that support discrete-event simulation: AnyLogic and Arena. Since AnyLogic is developed base on JAVA, it possesses an excellent object-oriented modeling capability; As an individual system, the features that Arena holds make its modeling focus more on the overall process of the model. Due to this difference in their characteristics, the obviousness of our comparison could be enhanced. Therefore, We regard these two simulation tools as the comparison objectives.

In order to compare Anylogic and Arena, we prepared two different supply chain models as the simulation objectives: C14 supply chain management [9] and Vantai sup-ply chain model. We use both of the selected simulation tools to simulate each model. Since each model was simulated by both AnyLogic and Arena, we obtained two build-ing processes and two simulation results within one supply chain model. Based on these obtained building processes and the outputted simulation results, the two simulation tools were compared.

For comparison, we first referred to other related works on the comparison of simu-lation tools [10, 11, 12], then defined the comparison metrics of our research. According to the comparison metrics, we compared Anylogic with Arena based on five aspects: the capability of discrete-event simulation; Visualization; simulation efficiency; simulation accuracy, and debugging. The calculations of these metrics were explained in the Com-parison Metrics at the Method Section.

(10)

1.1 Background

To fully understand the concepts of this research, it is essential to have basic knowl-edge regarding

• The Anylogic simulation software • The Arena simulation software • Discrete-event simulation

• C14 Supply Chain Management Benchmark • Vantai Supply Chain Model

This chapter provides a basic overview of the compared simulation tools, two differ-ent model templates and simple inforduction of discrete-evdiffer-ent simulation. We describe those detailed models and their discrete events in the method section.

1.1.1 The Anylogic simulation software

Since developed based on java, Anylogic is a professional object-oriented simula-tion software which supports to develop models using three modern simulasimula-tion methods including discrete events, agent-based, system dynamics. Anylogic has been used to in-sights even optimizes complex systems and processes across a wide range of industries, such as manufacturing, medical, transportation even business processes, its clients include DHL, Airbus, TOYOTA and etc. These clients use AnyLogic to simulate and analyze their own business or manufacturing processes [13]. As one objective of this research, Any-logic was used to process the discrete-event simulation of two supply chain models, then we compared Anylogic with another simulation software.

1.1.2 The Arena simulation software

As a classical simulation tool, Arena is more based on process, due to its unique system, users can only express the flow of the system or event through the cooperation be-tween the various attached modules when using Arena for simulation, rather than specifi-cally modeling an object or event. Therefore, Arena mainly used to simulate the business process and discrete event by its modules [14]. In this research, Arena as another com-parison objective, we attempted to use it on the discrete-event simulation of supply chain models. According to the building process when simulating the supply chain models and outputted simulation results, Arena was compared with Anylogic.

(11)

1.1.3 Discrete-event simulation

In a system, we can always find a time point to label the changes in the system. These time points are discrete on the time axis rather than continuous, the state of the system is only changed at the time points. by abstracting these discrete times into system events, any changes in the system can only be achieved by processing the corresponding events. In simple words, discrete-event simulation is a method to predict system changes according to the events changing at discrete time points [6, 7]. For example, factory production is to make the material to product. Using discrete event simulation modeling, the production process from the material until a product is modeled with two events, namely a production-start event and a production-end event. The actual process of the production would be modeled as a time delay between the start to production-end events.

1.1.4 C14 Supply Chain Management

As a classic supply chain model, there have been many descriptions of the model such as SIMULATION NOTES EUROPE. In this research, We will consider the C14 Supply Chain Management as one model template, using Anglogic and Arena to simu-late this model especially inside discrete events, then compare the two simulation tools through their building processes and simulation results.

1.1.5 Vantai Supply Chain Model

Vantai Supply Chain Model as another model template in this research, it has more complicated relationships between the upstream and downstream. For example, the tributors are ranked into different grades by the factories with corresponding price dis-counts, the high-ranking distributors are even provided with the unique product. Besides, Vantai supply chain model possesses numerous system events, such as the discount event for distributors or the refunds initiated wholesalers.Since most of the data in this model is provided by China Vantai company which as one of the distributors in the supply chain, it will focus more on profits and costs of the distributors.(detaied model was showed in Method Section) By using Anglogic and Arena to simulate this model to collect their output simulate processes and simulation results, then compare the Anylogic with Arena according to these building processes and simulation results.

(12)

1.2 Related work

This research is based on model-building to compare two different simulation tools. During this thesis, we refer to many relative works to select one of the supply chain models according to the related simulation projects published in the journal Simulation Notes Europe (SNE)1 and reference their simulation algorithms and results. We also develop our comparison metrics by considering these relative works [12].In what follows in this sub-section, we highlight the relative works that have a profound influence on our research.

1.2.1 C14 Supply Chain Management Benchmark

The definition of C14 Supply Chain Management is described in SNE [9]. Author

Shabnam Michèle Tauböck describes in detail for the basic definition of C14 supply chain

management.

According to this classic model, we have fully referenced the model as one of our controlled experiments, using Anylogic and Arena those two different simulation tools to build C14 supply chain model separately, then making a comparison of the first controlled experiment based on the performance during these building processes and the obtained two simulation results.

For our research, we prepare another simulation model additionally as the second controlled experiment —– the Vantai supply chain model, which is only provided by the China Vantai company. Therefore, there is no academic research on this supply chain model yet.

1.2.2 C14 Supply Chain Management - AnyLogic 4.0

Author Michael.G and Johannes.K used AnyLogic 4.0 version to simulate the C14 Supply Chain Management. They first described and analyzed the model, then demon-strated their modeling ideas and published a part of their simulation results [15].

In their research, Anylogic is used, which also is one of the selected simulation tools in our study. Furthermore, their supply chain model —- C14 supply chain management, is one of our model templates as well. Therefore, our algorithms are inspired by these two scholars when we use AnyLogic to simulate C14 supply chain management. For example, to simulate the purchase, they express this event by sending an order and use system time to control it. We have used this discrete-event simulation method in our research as well. During our research, in addition to simulating C14 supply chain management by AnyLogic, we use Arena to model this supply chain template as well. Moreover, we use

(13)

both AnyLogic and Arena to simulate another supply chain model, to compare AnyLogic with Arena by these building processes and simulation results.

1.2.3 An Object-oriented Approach to ARGESIM Benchmark C14 ’Supply Chain’ using MATLAB

In this research, Matthias.W and Stephen.R simulated the C14 supply chain man-agement by MatLab, sharing their algorithms and publishing the complete simulation result. [16]

Because of the incomplete simulation result in the previous related work(C14 Supply

Chain Management - AnyLogic 4.0), we have to find another research to analyze the

correct simulation result of C14 Supply Chain Management. The authors Matthias.W

and Stephen.R explain their detailed simulation results in their study. We consider these

simulation results to draft our expectation on C14 supply chain management simulation. In this relative work, the authors build the model by MatLab. However, our research does not include this software, we refer to their results of C14 supply management only, to assure our expectations.

1.2.4 Comparison of discrete event simulation tools in an academic environment Author Jadric, Mario and Cukusic, Maja and Bralic, Antonia used Arena and Ex-tendSim to simulate two research models in their study, evaluating the simulation software on three main categories of criteria: modeling and simulation capabilities of the explored tools, and tools’input/output analysis possibilities. Each main category with respective sub-criteria such as the procedure of model building; Simulation efficiency; Modeling as-sistance; Speed of executing the simulation; visual aspects; Performance display and the possibility to clearly understand reports.

Although neither the compared simulation software nor the models in their study are different from ours, it still valuable to be considered. By referring to their comparison criteria and the methods for performing comparisons, we designed a part of our compar-ison metrics: the capability of discrete-event simulation, simulation efficiency, and the visualization. The comparison of the discrete-event simulation capability is about the re-lated features of discrete-event simulation. The simulation efficiency is to compare the modeling assistance, the speed of opening the software, and the time cost of executing the simulation. The visualization is about the style of the user interface, the pixels of images or animations, and whether the structure of the user interface is clear

In our research, we also prepared two additional comparison metrics on our own: the accuracy and the debugging ability. The comparison of the accuracy is to analyze and compare the simulation results that output by both AnyLogic and Arena. The debugging

(14)

ability is about the efficiency when debugging. Our detailed calculation methods of each metrics were explained in the Method Section.

1.3 Problem formulation

The goal of this project is to focus on comparing the two different simulation tools —-Anylogic and Arena on supply chain simulation. Based on such purpose, we designed two sets of controlled experiments, considering the C14 supply chain management and the supply chain data provided by the China Vantai company as the modeling templates for these experiments, then using AnyLogic and Arena to simulate each supply chain model. According to both the building processes and outputted modeling results of each simulation tool, we compared Anylogic with Arena from the capability of discrete-event simulation; Visualization; simulation efficiency; simulation accuracy, and debugging.

1.4 Motivation

The supply chain is an indispensable role in business groups. Through the flow of the information, logistics and funding, the supply chain will connect suppliers, manufac-turers, distributors, retailers, and end-users into one functional network chain structure. Outstanding management of the supply chain can effectively achieve the satisfaction of different customers, reduce the costs and increase profits. In order to pursue a more complete supply chain structure and achieve advanced management methods, many com-panies depend on the simulation of the supply chain based on their internal data for an-alyzing and optimizing. There are many professional modelling simulation tools in the technology market nowadays. Therefore, the topic that "how to compare and select an appropriate simulator to make the research against the supply chain management more efficient" has deeply attracted us.

However, it would be a difficult task to compare all these simulation tools. There-fore, we focus on two famous and representative professional simulation software after the preliminary screening. The first one is AnyLogic, which is an object-oriented simula-tion software and developed based on java. AnyLogic as a set of modeling development tools combining multiple simulation theories, it is widely used in many fields; The other simulator is Arena, which is an advanced simulation software emphasizing business mod-eling and orienting more on the process. Arena is also known as simulation software that supports the discrete-event simulation theory. Since both of the two simulation software support the discrete-event simulation, but they have different features, the comparison be-tween them could be interesting. We compared the capabilities of these two simulation tools for supply chain management. Furthermore, we also attempted to find a comparison method of other simulation software from this research.

(15)

1.5 Objectives

Table 1.1 lists objectives of our project.

O1 Simulate the C14 supply Chain management and Vantai supply chain model by both Anylogic and Arena to obtain their building processes and simulation results.

O2 Compare Anylogic and Arena according to the obtained building processes and simulation results from each supply chain model.

Table 1.1: Project objectives

Expected results are:

• To obtain the building processes and simulation results by using both Anylogic and

Arena to simulate each supply chain model.

• To compare Anylogic with Arena according to their building processes and

simula-tion results. The comparison results include five aspects: the capability of discrete-event simulation; Visualization; simulation efficiency; simulation accuracy and de-bugging.

1.6 Scope/Limitation

In this project, we selected Anylogic and Arena these two simulation tools against to supply chain simulation in our experiments and compare the two simulators based on the building processes and the results obtained. In fact, there is plenty of software avail-able for simulation such as Enterprise Dynamics, ANSYS, MatLab even the compiled languages like Python. The simulation capabilities of different tools in various fields have colossal contrast. However, It will be a huge task to completely compare all these simu-lation tools. In the term of comparison, we only compared the selected simusimu-lation tools from the five aspects as: the capability against to discrete-event simulation, visualization, the simulation accuracy, modelling efficiency and debugging. In addition, the optimiza-tions for simulation tools are also beyond the capabilities of this project.

1.7 Target group

The target group for this study may be commercial companies which managing a similar supply chain model or some researchers and developers who may interested in the simulating processes to have their own comparisons even try to optimize these two simulation tools.

(16)

1.8 Outline

In order to achieve the purpose of comparing the two simulation tools, we designed two sets of controlled experiment, we expected to compare the two tools by the building process of each simulation and the outputted modeling results in the experiment. The spe-cific experimental methods and comparisons metrics were described in the next section, the reliability and validity discussion and ethical considerations were also included. In Implementation section, we show the detail processes of each our experiment —– simu-lation processes and simusimu-lation results. The results of the comparison were displaying in Section 4; In the section 5, the the two simulation tools were analysed based on the ob-tained compare results. In section 6, we discussed how the research results are helping to solve our target questions. In section 7, we provided our conclusion for this research and further research objectives. Last pages of this report contained reference and Appendix.

(17)

2

Method

The purpose of this project is to compare the two simulation tools —- Anylogic and Arena against the in supply chain models with discrete-event simulation. To realize this purpose, the controlled experiment was selected as our method. However, If only prepare for one controlled experiment, the comparison may be short of representativeness or accuracy. In order to avoid such problem, the second controlled experiment was set. For the first set of the controlled experiment, We referred C14 supply chain management as the objective, used these two simulation tools as the controlled variables; In the second set of the controlled experiment, the Vantai supply chain model was considered as the objective but the same controlled variables would have. The obtained simulation building processes and modelling results were observed as dependent variables of each experiment. Anglogic and Arena were compared according to the dependent variables in the same set of controlled experiment. Since the existence of the controlled experiment were two, Anylogic and Arena were actually compared twice. Combined the two comparisons, a comprehensive analysis was described in section 5. The entire overview was showed in the Figure 2.1.

Figure 2.1: Controlled experiments overview

In the following contents, we first defined the controlled variables and experimental environment in order to reduce the deviations of the experiments. Then giving a detailed description base on each set of controlled experiment including both the experimental objectives —- used supply chain models with their discrete events —- and the expected modelling results as the dependent variables. Further, we elaborated on specific

(18)

compar-ison metrics that combined both the simulation implement processes and the modelling results.

2.1 Controlled variables and experimental environment

Here we defined our controlled variables and experimental environment to reduce the deviations of the experiments. Obviously, in both two sets of controlled experiments, the controlled variables were the two compared simulation tools — Anylogic and Arena: Anylogic was determined to be 8.5.1 personal learning version. JAVA running environ-ment(JRE)must be installed since Anylogic is developed according to JAVA, the JRE that we used was the 10.0.2 version [Figure 2.2]; Arena 16.00.00002 free version was chosen as another controlled variable, the bundled report renderer was also installed. Be-sides, the device for running the simulations equaled to the experimental environment, therefore, our computer configuration had also been confirmed as shown Figure 2.3.

Figure 2.2: JRE version

Figure 2.3: Computer configuration

2.2 The first controlled experiment

In this controlled experiment, the experimental objective is C14 supply chain man-agement, we used Anylogic and Arena as the controlled variables to simulate C14 supply

(19)

chain management one by one. The processes and modelling results outputted by An-glogic and Arena should be seen as the dependent variables. In the following content, we described C14 supply chain management model in detail and highlight the system events inside and abstracted them into discrete-events, then discussed the modelling results we expected.

2.2.1 Objective: C14 supply chain management

As the objective of first set of controlled experiment, here we described the C14 supply chain management model with the abstracted discrete-events. [9]

Model description

This model is a relatively simple supply chain with three different strategy task. First consisting of four factories, four distributors, and a group of wholesalers. Their supply relationships are shown in the Figure 2.4

Figure 2.4: the relationship between factory, distributor and wholesaler in C14

The factories produce 12 different products Pk (uniformly distributed) to supply the distributors. Each factory does not produce all types of products but only produces 6 different products. The interarrival time of products is distributed exponentially with parameter 600 seconds (independent of type of product). The products pk have no specific attributes such as weight or size.The products produced by each factory are shown in the Table 2.2.

(20)

F1 F2 F3 F4 P1 P7 P4 P10 P2 P8 P5 P11 P3 P9 P6 P12 P4 P10 P7 P1 P5 P11 P8 P2 P6 P12 P9 P3

Table 2.2: Factories production

All the factories with unlimited raw materials produce all the time around the day. For the first 7 days, they focus on expanding their own stock of products without any selling. Then the distributors start with their orders on the 8th day, 00.00( after 168 hours); at this time, each distributor orders 10 pieces per product to fill their storages. Further orders are placed once a day, at 00.00. If the product amount of an order cannot be fulfilled, it is postponed until the next day. Transport ordered products from factory cost distributor 10 per hour of delivery per order (independent of the number of products), the distributor’s storage costs are 1 per product per day, Observed stock essential is the number of stored products at next order time, independent from arrival or leaving time of an individual product. Furthermore, a supply lead time between distributor and factory (Table 2.3) must be taken into account.

F1 F2 F3 F4

D1 16 16 20 12

D2 15 16 13 19

D3 14 16.5 20 17

D4 22 13 16.5 18

Table 2.3: Supply lead time

A group of wholesalers orders stochastically products from the distributors (one product per order). Starting to place their orders to the distributors at 00.00 on the 9th day (after 192 hours). If the distributor who could not deliver products of an order to the wholesalers, this distributor will orders these products additionally from the factories at next order time (00.00, next day) The time in between orders is uniformly distributed over the interval [ 600,3600 ] seconds discretely.

TASK A: Simple Order Strategy

(21)

factory after they build their own stock of products(begin at 00.00 on the 9th day after 192 hours). Their supply relationships as shown in figure2.3, D1 and D2 order at F1 and F2, D3 and D4 at F3 and F4.

TASK A1: Simulate the system once for 30 days and show the stock of distributor

D1 over time.

TASK A2: Perform 100 simulation runs, calculating maximum, minimum, mean and

deviation of

• C = total cost of distributor D1

• N = number of products delivered by distributor D1 • R = relative costs of distributor D1, R = C/N

TASK B:On Demand Order Strategy

Instead of ordering a constant number of products in Task A, now the distributor orders as much as needed to meet the demand of the downstream component: Each dis-tributor accumulates the orders (for each product) of the wholesalers –no matter fulfilled and not –over 24 hours (from 00.00 to 24.00 each day) and then orders that amount from the factories at the next order time (00.00, next day).

TASK B1: Simulate the system once for 30 days and show the stock of distributor

D1 over time.

TASK B2: Perform 100 simulation runs, calculating maximum, minimum, mean and

deviation of

• C = total cost of distributor D1

• N = number of products delivered by distributor D1 • R = relative costs of distributor D1, R = C/N

(22)

In the previous tasks the distributors place their orders at fixed factories. Now each distributor faces to every factory and tries to order at a factory which has the minimal supply lead time. If the desired amount of products is not available, the factory next in ranking in regard to minimal supply lead time is chosen, and so on. If no factory can deliver, the order is postponed to the next day.

TASK C1: Perform 100 simulation runs, calculating maximum, minimum, mean and

deviation of

• C = total cost of distributor D1

• N = number of products delivered by distributor D1 • R = relative costs of distributor D1, R = C/N

TASK C2: Compute a comparative table, showing mean and deviation of C, N and R

for all three order strategies.

System events abstracted into discrete-events

Here, we clarified the discrete events of C14 supply chain management in the fol-lowing contexts.

• Production of factory

From the beginning of the simulation until the end, each factory has always main-taining producing. The production interval time between the two products is dis-tributed exponentially with parameter 600 seconds which means a factory produces a new product every 600 seconds, and every 3600 seconds each factory can com-plete a round of all the 6 types of products. At the beginning of the system, the 00.00 on the first day represents one product starting to produce, after 10 minutes till 00.10, this product is completed and the next product is starting to produce, and so on. In fact, a factory uses "every 10 minutes" to represent the process of produc-ing a product. Thus, from the beginnproduc-ing of the system, a timer every 10 minutes as a loop should be set to processing the production of a factory.

• The orders sent from distributor to factory

At 00.00 on the 8th day( after 168 hours) of the system time, the first order of each distributor is sent to corresponding factories and distributors purchase each product

(23)

with the amount 10, regardless of the ordering strategy used. Further orders are placed according to different ordering strategies at 00.00 once a day. Therefore, at 168 hours of system time, the ordering movements of each distributor will be triggered; at 00.00 next day, the same trigger is called again, every 24 hours as a loop. Except for the first ordering movement, the specific implementation of the remaining ordering movements are changed according to the ordering strategy.

• The products arrive at distributor

This discrete event is almost the same as the previous event. At 00.00 on the 8th day( after 168 hours) of the system time, the first order of each distributor is sent to corresponding factories, and the further orders are placed at 00.00 once a day. When a factory receives an order from the downstream, the ordered products will be sent immediately, after the corresponding supply lead time, these products are delivered at the distributor, this corresponding supply lead time can represent the delivery process from a factory to a distributor. Therefore, a timer should be acted when a factory receives an order, after a supply lead time, the timer is stopped since the ordered products have arrived at the distributor. This timer is also a 24-hour loop every day at 00.00 starting at 168 hours of the system time.

• The stock statistics of distributor

This is an important discrete event since we have to observe the distributor’s stock in task a and b. The stock statistics essentially is the number of stored products at next order time, independent from arrival or leaving time of an individual product. Starting at 168 hours, a stock checking is called, the same movement acts again at the 00.00 next day. Actually, this is a similar timer as the one triggering the distributor’s ordering movements, starting at 168 hours and calculating the current stock of observed distributor every 24 hours. In this way, stock statistics can be obtained.

• The orders sent from the group of wholesalers to distributor

Since the time in between orders is uniformly distributed over the interval [600,3600] seconds, the group of wholesalers will send one order to a random distributor, the interval time between two orders is minimum 10 minutes, 60 minutes maximum. At 192 hours of the system time, the first one order is sent from wholesalers to a random distributor. The next ordering movement will be triggered after a random integer time within the range of 10 to 60 minutes. In other words, when the previ-ous ordering movement is completed, a timer will be set after a 10-minute interval, when this timer is acted, the next ordering movement must be triggered within 50 minutes; when the next ordering movement is acting, a new timer will be set again

(24)

after the same interval time, and so on. The cased result is the total number of orders from wholesalers will be as a range of minimum 24 to maximum 144.

2.2.2 Dependent variables: Expected modelling results

For a fixed model, the obtained result by each simulation is not always at the same value, these results are different but they are at the same range. According to these re-searches we referenced and the analysis of each order strategy, the following simulation results was expected: The stock of distributors should be raised to 120 after the first order, the further stock should have different trends based on the used order strategy. On Simple

Order Strategy, ordering a fixed number of products made the stock gradually rise, the

total cost and the relative cost on this strategy should be the most expensive one; On

De-mand Order Strategy, products were ordered on deDe-mand make the distributors offer less

additional stock, the total cost and the relative costs were cheaper; The Minimal Supply

Time Strategy based on the previous strategy, transportation costs reduced by choosing the

shortest supply lead time, therefore, the cheapest total cost and the relative costs should be had and a similar stock tend with On Demand Order Strategy should be got. Moreover, the deliver amounts of these three strategies should be at a same range. Whether using Anylogic or Arena, the obtained results should be at the same range as long as the model was built correctly.

2.3 The second controlled experiment

As the second controlled experiment, the experimental objective should be Vantai supply chain model, we also used Anylogic and Arena as the controlled variables to sim-ulate Vantai supply chain model one by one. The processes and modelling results out-putted by Anglogic and Arena should be seen as the dependent variable in this controlled experiment as well. In the following content, we explained Vantai supply chain model in detail and highlight the system events inside and abstracted them into discrete-events, then discussed the modelling results we expected.

2.3.1 Objective: Vantai supply chain model

As another objective in the second set of controlled experiment, the included discrete events of Vantai supply chain model are more that C14 supply chain management. The detailed descriptions of the model and the inside discrete events as followed.

(25)

This model is based on the data information provided by China Vantai company. First consisting of three factories, three distributors, and a group of wholesalers. Their supply relationships are shown in Figure 2.5.

Figure 2.5: Vantai model relationthips

The investigations consider a time horizon of 120 days, beginning at 00.00 at the 1st day and ending at 24.00 at the 120th day, totally 2880 hours.

For the three factories, they produce 9 different products Pk (uniformly distributed)in total and to supply the distributors. Each factory only produces 3 types of different prod-ucts. The interarrival time of each product is distributed exponentially with parameter 20 minutes (independent of type of product) in the first 3 days, and then the interarrival time turns to be 180 minutes. The products pk have no specific attributes such as weight or size. The products produced by each factory are shown in Table 2.4.

Factory 1 Factory 2 Factory 3 Product 1 Product 4 Product 7 Product 2 Product 5 Product 8 Product 3 Product 6 Product 9

Table 2.4: Vantai products

All the factories are also supposed to be supplied with unlimited raw materials and keep produce 24 hours per day. For the first 3 days, the factories only producing without any sells in order to build their own stock of products. At 00.00 on the 4th day(after 72 hours), the factories begin to receive orders from downstream. At the same time, account from the 00.00 on the 4th day(after 72 hours), all these three factories will stop the production for one day off after working six days (after every 144hours, taking a 24-hour break) to ensure a quality performance and longer service-time of the production equipment. However, order receives and deliver products will be continued.

(26)

Moreover, in the model, the factories are ranking each distributor in three different levels in Table 2.5.

Factory 1 Factory 2 Factory 3 Distributor 1 Level A Level B Level C Distributor 2 Level B Level C Level A Distributor 3 Level C Level A Level B

Table 2.5: Vantai factory agent level

Each factory will consider their Level A distributor as the exclusive agent and give them the exclusive rights to sell one type of product, other distributors without the ex-clusive rights cannot order or sell this type. The exex-clusive rights of product for each distributor in the Table 2.6.

Name Exclusive rights of Product

Distributor 1 Product 1

Distributor 2 Product 7

Distributor 3 Product 4

Table 2.6: Vantai distributor exclusive

The 4 Distributors Di supply a group of wholesalers and order from the factories. After the factories produce for 3 days to have a stock of products, Then the distributors start to purchase their regular orders after the 72 hours at 00.00 on 4th day. The regular order is a repeated order with a 30-day interval. When the distributors going to have the regular orders, the factories will give each of them a specific discount according to their rank. The higher rank distributor is, the greater discount will be. Except these regular order, the remaining orders have no discount. The discount of each level in the Table 2.7.

Level Discount

A 55%

B 65%

C 75%

Table 2.7: Discount for distributors

Besides, The supply lead time between the factories and distributors must be consid-ered. The details is in the Table 2.8.

In once regular order, each distributor will order 20 pieces per exclusive product and 10 for each normal product, the total amount that ordered should be 80 pieces. After the 72 hours(at 00.00 on 4th day), the first regular order is sent by a distributor to the factories in order to load their own stock. At 00.00 the next day —- after 96 hours on 5th day, the

(27)

F1 F2 F3

D1 14 16 18

D2 16 18 14

D3 17 15 17

Table 2.8: The supply lead time between distributor and factory

group of wholesalers will start to orders stochastically products from the distributors(one product per order). The time in between these orders is uniformly distributed over the in-terval [ 50, 150 ] minutes discretely. If the ordered amount can be covered by the stock of distributors, then the distributors will deliver the product immediately. Otherwise, the dis-tributor accumulates the orders (for each product) of the wholesalers that not be fulfilled over 24 hours and then orders that amount from factories at the next order time(00.00) without discount.

Further, The supply lead time in between of distributors and wholesalers also need to be calculated. The details is in the Table 2.9.

W

D1 11

D2 12

D3 11.5

Table 2.9: The supply lead time between distributor and wholesaler

If set the cost of each production is unified as 1, the factories must ensure that the minimum profit of a single product is 17% to maintain healthy development. In this situation, after the most discount on A-level distributors, the profit of one single product for the factories must be still kept above 17%. To achieve this profit, the original price should be 2.127 per product; after discounts, the price for level A is 1.17 per product; for level B is 1.3845 per product and for level C is 1.5975 per product.

For distributors, they must keep the profit of a single product at least 25% to ensure their costs can be full covered. Since the cost per product is considered as the original price from the factories, the final transacted price for the group of wholesaler is 2.658 per product.

Furthermore, distributors have to spend on both the storage costs and the deliver fee that transport to the wholesalers.

For their storage, the cost is 0.05 per product per day (essential is the number of stored products at next order time, where the storage costs are calculated as the formula

(cost per day) * (number of stored products), independent from arrival or leaving time of

(28)

The deliver fee costs 0.03 per hour of delivery per order (independent of number of products).

After the basic flow of this supply chain model, there are two special event need to be discussed.

The first event is acted by factories. All the three factories will carry out a discount event individually with a fixed probability of 20 % every 15 days. At 00.00 on the 15th day (after 336 hours), the factory is determining that if to hold a discount event or not. Only 20 % probability for each factory will agree to hold. If disagree, the same action will be achieved again with the same probability at 00.00 the next day after 24hours. Until the discount even is agreed, The second discount event will be after a 15-day interval. During the discount event, the distributors will purchase additional random amount of random product type but at less 3 of the exclusive product.

The second event is realized on the wholesaler. If an order is still not delivered by upstream after 24 hours of sending it, this order will be considered as overdue order and may be cancelled with a starting probability of 0 %, every one hour more waiting, 0.1 % probability for undo is added. Since the sending order time is different, the wholesalers should check all the sending orders every minute starting at 00.00 6th day.

Observation Task

Simulate the system once for 120 days and show the following contents:

• The stock of distributor D1 over time. • The outcome of distributor D1 over time • The income of distributor D1 over time. • The profit of distributor D1 over time.

• The number of overdue orders by distributor D1. • Total number of overdue order.

• Total discount event achieved.

System events abstracted into discrete-events

Since there are a lot of discrete events in this model, Therefore, the detail of dis-crete events were explained as the movements of a system, in one movement, one or two discrete events may be included.

(29)

• Production of factory

For the 3 days from the beginning of the simulation, the factories keep a fast pro-duction rate, the interarrival time of each product is distributed exponentially with parameter 20 minutes, At 00.00 4th day after 72 hours, the factories slow down their production rate as distributed exponentially with parameter 180 minutes and maintaining this producing rate until the end of system.

For the system, there are three types of discrete events. Firstly, at the beginning of the system, the 00.00 on the first day represents one product starting to produce, after 20 minutes till 00.20, this product is completed and the next product is starting to produce, and so on. The factory use "every 20 minutes" to represent the process of producing a product of the first 3 days. At the 00.00 on 4th day, after 72 hours of system time, a timer is setted to trigger the slowdown of production. When the timer is triggered, the parameter of production is turn to 180 minutes which means the process of producing a product will be maintaining as "every 180 minutes".

• The one day off for factory

The factories have not always maintaining producing. Account from the 00.00 on the 4th day(after 72 hours), all these three factories will stop the production for one day off after working six days (after every 144hours, taking a 24-hour break) to ensure a quality performance and longer service-time of the production equipment. For the system, the first timer should be triggered to represent the beginning of a six-day normal working period for the factories. After six days of this timer is called, another timer is setted to represent both the ending of the normal working period and the beginning of the one day off. After 24 hours, the first timer should be used again to represent the other beginning of the normal working period, so on as a loop.

• The orders sent from distributor to Factory

At 00.00 on the 4th day( after 72 hours), the first regular order of each distributor will be sent to factories and purchase each product with a fixed amount. The regular order should be as a loop every 30 days. For the the system, at 00.00 on the 4th day( after 72 hours), the trigger is acted to represent the first-time regular order from distributors to factories. the same trigger should be used every 720 hour 30 days.

Further orders are placed according to the extra requirement of distributors once a day at 00.00 ordering time. Therefore, also begin at 72 hours of system time, a timer should be achieved at 00.00 each day to represent the extra order from distributor. The order should be avoid if distributors has no extra requirement.

(30)

• The products arrive at distributor

This discrete event is almost the same as the previous model. At 00.00 on the 4th day( after 72 hours) of the system time, the first order of each distributor will be sent to corresponding factories, the further extra orders are placed at 00.00 once a day. when a factory received an order from the downstream, the ordered products will be sent immediately, after the corresponding supply lead time, these products are delivered at the distributor, this corresponding supply lead time can represent the delivery process from a factory to a distributor. Therefore, a timer should be acted when a factory receives an order, after a supply lead time, the timer is stopped since the ordered products have arrived at the distributor. This timer is also a 24-hour loop every day at 00.00 starting at 72 hours of the system time. If there is no extra order, 0 products will be delivered.

• The stock statistics of distributor

This is an important discrete event since we also have to observe the distributor’s stock. The stock statistics essentially is the number of stored products at next order time, independent from arrival or leaving time of an individual product. Starting at 72 hours, a stock checking will be called, the same movement will acting again at the 00.00 next day. Actually, this is a similar timer as the one triggering the distributor’s ordering movements, starting at 72 hours and calculating the current stock of observed distributor every 24 hours. In this way, stock statistics will be obtained.

• The orders sent from the group of wholesalers to distributor

Since the time in between orders is uniformly distributed over the interval [50,150] minute, the group of wholesalers will send one order to a random distributor, the interval time between two orders is minimum 50 minutes, 150 minutes maximum. At 96 hours of the system time, the first one order for a product is sending from wholesalers to a random distributor. The next ordering movement will be triggered after a random integer time within the range of 50 to 150 minutes. In other words, when the previous ordering movement is completed, a timer will be set after a 50-minute interval,when this timer is acted, the next ordering movement must be triggered within 100 minutes; when the next ordering movement is acting, a new timer will be set again after the same interval time, and so on.

• The products arrive at wholesalers

Same as the one The products arrive at distributor. At 00.00 on the 5th day( after 96 hours) of the system time, the first order of wholesalers will be sent to dis-tributors with a range interval as [50,150] minutes. when a disdis-tributors received

(31)

an order from the downstream, if their stock could fulfilled this order, the ordered products will be sent immediately, after the corresponding supply lead time, these products are delivered at the wholesalers; if not, after the distributor send the ex-tra order at00.00 next day and received the products after supply lead time with factories, then the ordered products will be sent. this corresponding supply lead time can represent the delivery process from a distributor to wholesalers a distrib-utor. Therefore, a timer should be acted when a distributor receives an order, after a supply lead time, the timer is stopped since the ordered products have arrived at the wholesalers. This timer is also a 24-hour loop every day at 00.00 starting at 72 hours of the system time. If there is no extra order, 0 products will be delivered.

• The discount events

The first event is acted by each factory. All the three factories will carry out a discount event individually with a fixed probability of 20 % every 15 days. For the system, At 00.00 on the 15th day (after 336 hours), a trigger with a fixed probability of 20 % will be used to represent a discount event is happened. If the trigger is not be used, the same trigger with the probability of 20 % should be called again after 24 hours. Until the discount even is happened, The trigger represents to the discount event will be used after a 15-day interval as a loop.

• Cancel order by wholesalers

This event is realized on the wholesaler. If an order is still not delivered b yupstream after 24 hours of sending it, this order will be considered as overdue order and may be cancelled with a starting probability of 0%, every one hour more waiting, 0.1 %probability for undo is added. Since the sending order time is different, the wholesalers should check all the sending orders every minute starting at 00.00, 6th day. For the system,

2.3.2 Dependent variables: Expected modelling results

For a fixed model, the obtained result by each simulation is not always at the same value, these results are different but they are at the same range. Due to lack of relevant research or report to refer on, we can only analysis the model to predict the expected modelling results:

Since the price setting in this model is based on the lowest profit rate, the income should be just cover the expenditure for distributors.

For distributors, If they want to keep break even, then before they purchase the reg-ular order every 30 days, they need to consume almost all of their storage first, otherwise, the increasing inventory costs will cased more and more expensive outcome. Therefore,

(32)

the products that purchased once at each regular order should be sold until they start to order the order the requirements of wholesalers which means the distributor is lacking of storage within 30 days. The basic storage changes should be as a periodic changes every 30 days as well. Besides, the total income and total outcome including inventory costs and delivery fee of observed distributor should be almost flat, the profit of this distributor should be slightly greater than 0.

Furthermore, three of the distributors have the same order method and selling, plus the same costs and profits, the events happened on each distributor should be same as well.Thus, the number of return orders by the wholesalers from distributor 1 should be almost one-third of all returns.

2.4 Comparisons metrics

In our two sets of controlled experiments, the experimental objectives were the two supply chain models —– C14 supply chain management and Vantai supply chain model. By using Anylogic and Arena against to simulate each of the objectives, two sets of mod-elling results and simulating processes can be obtained. These modmod-elling results and simulating processes of each set can be divided based on the used tool.In fact, four types of modelling results and simulating processes should be got through these two sets of con-trolled experiments. Since our target groups were not only included business companies with similar supply chain that focus on simulation results but also some developers or re-searchers who may be interested in the simulating processes for comparing or optimizing these simulation tools. In order to satisfy the needs of different readers, We combined both the building processes and simulation results to have a full comparison of Anylogic and Arena. After referred to the research of other scholars [10, 11, 12], we designed the comparison metrics as the following aspects:

• The capabilities against to discrete-event simulation

In these two experimental supply chain models, there are many system events which triggered according to system time, to represent the movements or changes of model systems and push the evolution of the entire system forward. In order to simulate these system events, the discrete-event simulation is used. Therefore, the compari-son of the capabilities to discrete-event simulation must be considered. For a more obvious comparison on this metric, we first compare the features to set the triggers of each event. Then, we compare the features which used to build these event mod-els. This comparison metric is to evaluate the usability of related features, and the capability to build system events. The design and evaluation of this comparison metric is referred to another research [11]. We considered their criteria of simu-lation efficiency and used their evaluation into our comparison of the capability in

(33)

discrete-event simulation.

• Visualization

Using a simulator which has visualization function to build a model can help the user clean the logic and relationships between different components of the model and improve modeling efficiency. If there is no visualization function or the visual-ization is not rich, it may be confusing when dealing with the logic or relationships, especially with some large complex models. To compare this metric, the overall visualization of the two simulation tools are compared. Besides, the comparisons for both the building process and the outputted simulation results are also displayed separately. We evaluate the visualization by considering the style of the user in-terface, the pixels of images and animations, and whether the structure of the user interface is clear. For this evaluation, we referred to the visual aspects from the study [11]. However, since the lack of a professional visual measure tool, our eval-uations of both the GUI style and the pixels are relatively general.

• Simulation efficiency

For the comparison of simulation tools, simulation efficiency is one essential com-parison metric. We compare this metric from two aspects: building efficiency and running efficiency. The building efficiency is to compare the features that have been optimized to improves efficiency for the user to build models, further, the limitation of the used version was also included in this comparison. The running efficiency is the speed of opening the simulation software and the time cost of executing the simulation. For comparing the building efficiency, we evaluate the smoothness of dragging modules, the assistance when connecting modules, and also the limitation of the used version. For comparing the speed of opening the simulation software, we use a professional tool called "AppTimer" to measure the simulation software’s opening speed. We measure each simulation software by 10 times, record all the results, and calculate the average. However, AppTimer cannot be used to measure the time cost of executing a model, therefore, we select to use the timer on Win-dows 10 to measure the time. We use both AnyLogic and Arena to simulate each model by 10 times, measure the time cost of each executing, record the results, and calculate the average. After all the measures, we compare the running efficiency by evaluating these average results. For our comparison of building efficiency, we referred to the evaluation of the modeling assistance from another thesis [11]. Be-sides, for our method to evaluate running efficiency, we referred to the same thesis about the speed of executing the simulation [11].

(34)

• Result accuracy

When simulate a fixed model by the different tools, as long as the building process is correct, the obtained result should be at the same range. Hence, the method to compare the accuracy is: Comparing the result of each model output by both AnyLogic and Arena, analyzing the difference between their results and explaining the reason. Then have a further comparison of the reason for this difference. To design the method of this accuracy comparison, we referred from other scholars [12] about their result comparison.

• Debugging

In the process of building a model when using a simulation tool, debugging the simulation is an extremely important step. A perfect simulation is always based on multiple debugging, only few people can guarantee to successfully build a model within once attempt [17]. Therefore, to compare the debug abilities of AnyLogic and Arena is necessary. This comparison has combined the comprehensiveness of the error report with the user experience for debugging. For this metric, we first studied the importance of debugging from other researchers [17], and then we designed the evaluating method by referring to their descriptions of debugging ability.

2.5 Reliability and Validity

We performed two sets of controlled experiments. For the two sets of controlled experiments, we confirmed the objectives —- two supply chain models; the controlled variables —- two simulation tools; the experimental environment —- one computer for running simulations. Besides, we also defined the comparison metrics.

In one controlled experiment, we simulated one supply chain model twice, use only one simulation tool each time, each simulation output one process and one simulation result by the one simulation tool, compared the one process and simulation result by one tool with another process and result by another tool. In another controlled experiment, simulated another supply chain model with the same method, compared by the same method as well.

According to these two controlled experiments, we can compared Anglogic and Arena since they were the used simulation tools in our two controlled experiments

(35)

2.6 Threat to validity

In our methodology, we designed the experimental method to solve our target prob-lem. However, there are some threats to validity.

In the comparison metrics of the simulation efficiency, we considered the limitation of the version to evaluate the building efficiency. However, if a user chose to use other versions of the simulation software, this kind of limitation may be changed or removed. In such cases, to evaluate this limitation is worthless. Except for the characteristic of sim-ulation software, some evaluations are also affected by the hardware device. For example, the speed of opening the software and the time cost of executing the model. This kind of effect reduces the accuracy of evaluation, it is a potential threat to evaluate the comparison metrics.

To eliminate these threats, We first defined the version of the selected simulation software. Then we declared the configurations of our hardware device. Furthermore, since AnyLogic is developed based on JAVA, the JAVA running environment(JRE) is required when using AnyLogic. Hence, we declared the version of our JRE as well. According to these kinds of declaration, we ensure the validity of our methodology.

2.7 Ethical considerations

Because the goal of this experiment is to compare two simulation tools which have a certain competitive relationship, the results of the comparison may cause unnecessary conflicts between the owners of the two simulation tools. Moreover, since the data of the Vantai supply chain model is provided by a real business company, these data may be a secret(such as the minimal profit or discount proportion). We used these data in our model template and published it. This behavior may cause the dissatisfaction of other commercial groups.

(36)

3

Implementation

In the previous chapter, we described the controlled experiment design of this study: We set up two sets of controlled experiments, to compare and analyze the two simulation tools by two bases: the simulation process and modelling results outputted in the same set of experiment. In this chapter, we showed the specific simulation building process when we used the two simulation tools to simulate our experimental objectives in both two control experiments. When using Anylogic to simulate the supply chain models, we referred to the building processes in Operations and Supply Chain Simulation with

AnyLogic [3]; for Arena, the reference was from Simulation in supply chains: An Arena basis [8]. Besides, since to simulate the model was not the final purpose of this project,

the simulation results from each experiment were also one basis for the comparison, the related modelling results in each controlled experiment were also displayed in this section. The following contexts was divided as each set of controlled experiment.

3.1 Implementation of C14 supply chain management

Here we explained the simulation building processes by using Anylogic and Arena against to C14 supply chain and display each result outputted by both Anylogic and Arena.

3.1.1 Simulation model built by Anylogic

During the building process of this model by using Anylogic, we first to created the empty agents for each objectives in the model. Then, we added the attributes into each agent by using the package proved by Anylogic such as function, parameter, variable, product and collection. In those packages, we wrote the codes by JAVA for further setting. After we completed creating the agent filled with specific attributes, we linked each agent as the entire model system.

In the following contexts, we proved an overview table for created agents. Then, the introduction for the detail construction of each agent was followed. In the end, we displayed our connection of the model system by each agent.

1. Table 3.10 is the overview for created agents against the Factory, Distributor, Whole-saler and Product.

(37)

Agent Type Name Used for Parameter name (String) Product name Product Variable stock (Integer) Product amount

name (String) Factory name

produceInterval (Integer) The interval time of production (minute) Parameter produceList (Integer[12]) available products

Variable productIndex (Integer) Index of currently production

Function produce () Produce method

Product (name=Product1) Product (name=Product2) Product (name=Product3) Product (name=Product4) Product (name=Product5) Product (name=Product6) Product (name=Product7) Product (name=Product8) Product (name=Product9) Product (name=Product10) Product (name=Product11)

Product Product (name=Product12) 12 different types of products Factory Collection ProductList (ArrayList<Product>) the set of 12 products

firstBuyCount (Integer) Number of products purchased for the first time nextBuyCount (Integer) The number of products purchased after transferFee (Double) Delivery costs (EUR / order) storageFee (Double) storage costs(EUR / order)

Parameter transferTime (Double []) Transport time with each factory (minutes) isFirstBuy (Boolean) if is the first purchase

lackProductList (HashMap<String, Integer>) lack of stock list (product name: the amount that lacked ) totalFee (Double) Total cost (Euro, delivery cost + storage costs) Variable totalSell (Integer) Total sale

buy () Place an order to the factory sell (int key, int buyCount, Wholesaler wholesaler) Place an order to the distributor getStorage () Calculate total storage Function addStorageFee () Increase storage costs

Product (name=Product1) Product (name=Product2) Product (name=Product3) Product (name=Product4) Product (name=Product5) Product (name=Product6) Product (name=Product7) Product (name=Product8) Product (name=Product9) Product (name=Product10) Product (name=Product11)

Product Product (name=Product12) 12 different types of products ProductList (ArrayList<Product>) the set of 12 products Distributor Collection factoryList (ArrayList<Factory>) list of available factories

lastBuyTime (Integer) last order time buyCount (Integer) amount of order buyIntervalRange (String) interval range of order Variable buyInterval (Integer) order interval Function buy () order from distributor

Product (name=Product1) Product (name=Product2) Product (name=Product3) Product (name=Product4) Product (name=Product5) Product (name=Product6) Product (name=Product7) Product (name=Product8) Product (name=Product9) Product (name=Product10) Product (name=Product11)

Product Product (name=Product12) 12 different types of products Wholesaler Collection ProductList (ArrayList<Product>) the set of 12 products

(38)

2. In order to build the model, we created 4 agents as:The specific construction of each agent is followed.

(a) Product Agent

This is the agent to represent the product with two attributes as shown in the Figure 3.6

Figure 3.6: Product Agent

i. The parameter name is the name of one type of product, It is used to mark this product in order to simplify the process on this product. For exam-ple, adding this product when the storage of this product is increased, or reducing this product when the storage is decreased.

ii. The variable stock means the storage number of the type of product in the Factory, distributor or wholesalers.

(b) Factory Agent

This is the agent to represent the factory, the attributes inside are in the Figure 3.7.

Figure 3.7: Factory Agent

i. The parameter name is the name of one factory, It is used to mark this factory in order to simplify the process on this factory.

(39)

ii. The parameter produceInterval is represent the production interval time of this factory which controlled the production rate. The unit of the pro-duction interval time is minute. For example, if it is set as 10, factory will produce 1 product every 10 minutes.

iii. The parameter produceList is a list with the available production of fac-tory. Since one factory do not produce all types of product but only 6 of different products, the intArray was used. The products with 0 means unproduced, 1 means produced.

iv. The variable productIndex represents an index value that the current pro-ducing in the factory since the products is produced one by one.

v. The function produce is the used function when the factory is producing. In this function, When the interval time is 0, the factory will produce one available product. After this production, the next available product will be produced after the interval time. The construct this function is shown in the Figure 3.8.

References

Related documents

If the quality of items coming from unauthorized distributor is as high as authorized distributors (Qu=1), then sourcing from unauthorized distributor almost has a negligible

While the survey study is based on SCM literature, the multiple case study is complemented with a theoretical framework on business strategy theory.. This type of literature gives

Primary reason of IT outsourcing Selection of IT Suppliers Decision makers and decision time Future effect of IT outsourcing Success rate of IT outsourcing Risk

Resultatet visar att svenska språket dominerar i förskolor och flerspråkiga barn använder sällan sitt modersmål, trots att Skolverket (2016) betonar betydelsen av barns

The empirical data rather indicates that a less successful matching process can be transcended by having two committed parties who are willing to accomplish goals by assuming roles

Varje tra Centrald minskad underlät centrald Projektö lägenhet budget.  Figur 4.5 under by   Ur trans våningsp mellan p under st finns tillg Under p formgjut trapphus

If the reserve price for an RFQ can be met, but the quantity cannot be met because of the supplier’s capacity limitation, then the agent may receive two offers, a partial offer

Vidare menar författaren att individ- och familjeomsorgen måste utvecklas gällande bland annat kontextuella faktorer och klientdelaktighet för att en evidensbaserad