# Performance evaluation of a Hybrid Flow Shop using Jsim

The objective is to do the performance evaluation of the given demo case using JMT software

## Case Description

The Hybrid flow shop is composed of 5 machines and 5 buffers which are connected accordingly. The processing time of each machine varies according to the part(classes).

![process time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F66fd9404015910efd352af5ce03e251cae210f0e.png?generation=1607383521281083\&alt=media)

## Formal model

![formal model](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2F-M4BtJVukeK5GaDdBzcA%2F-M4BtU5TQy_PAPsIzQ2v%2Fhfs-formal_model.png?generation=1586133085856384\&alt=media)

## Performance Evaluation

![home panel](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Ff98fb396d5dfec249d58be6bf6e2f3310474b955.png?generation=1607383531232339\&alt=media)

Open JSIM graph from the various tools in the home panel of JMT software

![source and sink](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fd2ce3ce58ae3c1c3b71197e7fa9ca0aeec4ba35d.png?generation=1607383529401964\&alt=media)

1. Select the **source and sink** icons in the toolbar and then place it in the workspace

![insert machines](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F9e5b1905e278300e5b95ce8314de89f64144b58c.png?generation=1607383533395778\&alt=media)

Insert machines into the workspace by clicking the **queue** icon in the toolbar

![connect machines](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F8e0b96d32063c36d63e3770f5d61572fc919a50a.png?generation=1607383528551139\&alt=media)

1. Click on the **connect stations** icon and then connect all the stations with regard to the case
2. Clicking on this icon optimizes the layout

![customer class](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F8aedd0604787fdb328d0369736c03c24e1718368.png?generation=1607383530599976\&alt=media)

1. Click on the **Add class** button in order to the add the parts.
2. Select **open** in type option

![inter arrival time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fc5a0dd0624fc31cb86f8488124460e84d035927e.png?generation=1607383529062032\&alt=media)

1. Click on the **edit** button under interarrival time distribution
2. Select **Exponential** distribution
3. Enter the **generation** rate of each part

![reference station](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F34ce63ca9be0d2ed43ecc484c1559491e0723292.png?generation=1607383533553786\&alt=media)

Select the reference station for each class. In this case all the three parts originate from

the same source.

![define M1](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F14744c22d0346a5b1890fb33558fb170174fa137.png?generation=1607383524417304\&alt=media)

1. Modify the station name as **M1**
2. Select finite under the capacity and then enter the value of buffer level+1 (11) in **max no. customers box**

![M1 service time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F9818ac43a03b314290d9e98cd73deafbe147fbad.png?generation=1607383531416526\&alt=media)

1. Click on **edit** under service time distribution
2. Select the **deterministic** distribution
3. Enter the process time value of the part with respect to the machine **M1**

![M1 routing part a](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F9eff4c2ae10f7e6ee762f5a84f9d214815a4c5d2.png?generation=1607383537649141\&alt=media)

1. Select **probabilities** as the routing strategy for **part A** in the routing section of the station
2. Enter the probability as 1 for **M2** and 0 for **M3**

![M1 routing part a](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F47849907902c4c485bce416b7e1a514032c6256f.png?generation=1607383537776275\&alt=media)

1. Select **probabilities** as the routing strategy for **part B** in the **routing section** of the station
2. Enter the probability as 0 for **M2** and 1 for **M3**

![M1 routing part c](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fa1936c9c6b6265149d2d660943326c455b88ceb2.png?generation=1607383520343386\&alt=media)

1. Select **probabilities** as the routing strategy for **part C** in the routing section of the station
2. Enter the probability as 1 for **M2** and 0 for **M3**

![define M2](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fd98308e49f7c623dc7ff0644eaffa111014af5bb.png?generation=1607383543071952\&alt=media)

1. Modify the station name as **M2**
2. Select finite under the capacity and then enter the value of buffer level+1 (8) in **max no. customers box**

![M2 service time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F7a4e680dab985e29a566c881aa3fb1bb27d90a62.png?generation=1607383539351647\&alt=media)

1. Click on **edit** under service time distribution
2. Select the **deterministic** distribution
3. Enter the process time value of the part with respect to the machine **M2**
4. Select **Zero service time** as strategy for Part B

![M2 routing](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fab2c448c227fb373c81993aeeca110467dab9e6e.png?generation=1607383533234100\&alt=media)

1. Select **probabilities** as routing strategy for part A and **random** for part B and part C
2. Enter probability as 1 for **M4**

![define M3](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F7acb98a0bdca831a4d54f73cb2e8991d5dfbdda8.png?generation=1607383538347055\&alt=media)

1. Modify the station name as **M3**
2. Select finite under the capacity and then enter the value of buffer level+1 (9) in **max no. customers box**

![M3 service time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F4a955a233f0e7f3800533ac336822484bbe71b35.png?generation=1607383536367397\&alt=media)

1. Select **Zero service time** as strategy for part A and part C and **load independent** for part B
2. Enter 2.1 in service time distribution tab

![define M4](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F8447daa270e178eaa5180ea78b83738751f1a8b0.png?generation=1607383537858070\&alt=media)

1. Modify the station name as **M4**
2. Select finite under the capacity and then enter the value of buffer level+1 (13) in **max no. customers box**

![M4 service time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F8a0b89d44006a7cd4fa08afb82406591f1e3725c.png?generation=1607383534541541\&alt=media)

1. Click on **edit** under service time distribution
2. Select the **deterministic** distribution
3. Enter the process time value of the part with respect to the machine **M4**

![define M5](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F69bec4dc169693a8f7b6c3e7477d5ba769ec03ed.png?generation=1607383533355945\&alt=media)

1. Modify the station name as **M5**
2. Select finite under the capacity and then enter the value of buffer level+1 (10) in **max no. customers box**

![M5 service time](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fa022ac189bdaf2cb532ce740a2f8667b6d2d4e84.png?generation=1607383538704594\&alt=media)

1. Click on **edit** under service time distribution
2. Select the **deterministic** distribution
3. Enter the process time value of the part with respect to the machine **M5**

![performance indices](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F3620bd6f0bf322e090e7d0199d75a4d93127da64.png?generation=1607383518386127\&alt=media)

1. Click on Select an index option and select **Throughput** and **Utilization**
2. Add Utilization as index for all the machines
3. Add Throughput as index for all the classes with respect to the system

![define simulation parameters](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2Fec13884ccddf99095d6b99872eb69aafe1eaf7a5.png?generation=1607383517379497\&alt=media)

Enter 1000000 as **the maximum number** of samples for running the simulation

## Simulation Results

![system throughput](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F8d6caddfd4d2b0fda4fa525fb4a3cd91e7e80163.png?generation=1607383532809674\&alt=media)

Throughput of:

* Part A= 0.3738
* Part B= 0.1916
* Part C= 0.3020

![utilization](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F3eee1a45dfa6c1bffce5805529365171ed700b0f.png?generation=1607383519470472\&alt=media)

![utilization](https://2247033703-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lh1dC9-F-cM6usakky7%2Fsync%2F996d057cc8788c2a12011a6bff32290379e11b8d.png?generation=1607383538059221\&alt=media)

Utilization of:

* M1=1
* M2= 0.6957
* M3= 0.4092
* M4= 1
* M5= 0.565
