Simple Throughput Analysis Example: Difference between revisions

From ReliaWiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<noinclude>{{Banner BlockSim Examples}}</noinclude>
<noinclude>{{Banner BlockSim Examples}}
Consider the simple system shown in figure below, but with <math>E</math> operating.   
''This example also appears in the [https://help.reliasoft.com/reference/system_analysis System analysis reference]''. </noinclude>
<br>
 
<br>
Consider the simple system shown in the figure below, but with <math>E\,\!</math> operating.   
[[Image:system diagram.png|center|350px|The system diagram ]]
 
<br>
[[Image:system diagram.png|center|350px|The system diagram|link=]]


In addition, consider the following deterministic failure and repair characteristics:
In addition, consider the following deterministic failure and repair characteristics:
<br>


[[Image:throughput_characteristics.png|center|450px|]]
[[Image:throughput_characteristics.png|center|450px|link=]]


Also:
Also:
<br>
 
:• Set all units to operate through system failure.
*Set all units to operate through system failure.
:• Do not add spare part pools or crews (use defaults).
*Do not add spare part pools or crews (use defaults).
:• Do not send items to failed units.
*Do not send items to failed units.
:• Use a weighted allocation scheme.
*Use a weighted allocation scheme.
<br>
 
===Event History: 0 to 100 Time Units===
Then the system behavior from 0 to 100 time units is given in the table below.  The system event history is as follows:
Then the system behavior from 0 to 100 time units is given in the table below.  The system event history is as follows:


<br>
[[Image:event history.png|center|250px||link=]]
[[Image:event history.png|center|200px|]]


<br>
Once the system history has been established, we can examine the throughput behavior of this system from 0 to 100 by observing the sequence of events and their subsequent effect on system throughput.   
Once the system history has been established, we can examine the throughput behavior of this system from 0 to 100 by observing the sequence of events and their subsequent effect on system throughput.   
<br>
 
<br>
[[Image:system behavior.png|center|link=]]
[[Image:system behavior.png|center]]


'''Event 1:  B  Fails at 50'''
'''Event 1:  B  Fails at 50'''


<br>
:• At 50,  B  fails.   
:• At 50,  B  fails.   
:• From 0 to 50,  A  processes <math>50\cdot 60=3000</math> items.
:• From 0 to 50,  A  processes <math>50\cdot 60=3000\,\!</math> items.
:• 500 are sent to  B , 1000 to <math>C</math> and 1500 to <math>D</math> .  There is no excess capacity at  B , <math>C</math> or <math>D</math> .
:• 500 are sent to  B , 1000 to <math>C\,\!</math> and 1500 to <math>D\,\!</math>.  There is no excess capacity at  B , <math>C\,\!</math> or <math>D\,\!</math>.
:• B , <math>C</math> and <math>D</math> process and send 3000 items to <math>E</math> .  Because the capacity of <math>E</math> is 3500, <math>E</math> now has an excess capacity of 500.
:• B , <math>C\,\!</math> and <math>D\,\!</math> process and send 3000 items to <math>E\,\!</math>.  Because the capacity of <math>E\,\!</math> is 3500, <math>E\,\!</math> now has an excess capacity of 500.
:• The next table summarizes these results:
:• The next table summarizes these results:
<br>
 
[[Image:event 1.png|center|500px|]]
[[Image:event 1.png|center|550px|link=]]
<br>


'''Event 2:  B  is Down 50 to 54'''
'''Event 2:  B  is Down 50 to 54'''


<br>
:• From 50 to 54,  B  is down.
:• From 50 to 54,  B  is down.
:• A  processes 240 items and sends 96 to <math>C</math> and 144 to <math>D</math> .
:• A  processes 240 items and sends 96 to <math>C\,\!</math> and 144 to <math>D\,\!</math>.
:• <math>D</math> and <math>C</math> can only process 80 and 120 respectively during this time.  Thus, they get backlogs of 16 and 24 respectively.
:• <math>D\,\!</math> and <math>C\,\!</math> can only process 80 and 120 respectively during this time.  Thus, they get backlogs of 16 and 24 respectively.
:• The 200 processed are sent to <math>E</math> .   <math>E</math> has an excess capacity of 80 during this time period.
:• The 200 processed are sent to <math>E\,\!</math>. <math>E\,\!</math> has an excess capacity of 80 during this time period.
:• The next table summarizes these results:
:• The next table summarizes these results:
<br>
[[Image:table 2.png|center|500px|]]
<br>


'''Event 3: All Up 54 to 55'''<br>
[[Image:table 2.png|center|550px|link=]]
 
'''Event 3: All Up 54 to 55'''
 
The next table summarizes the results:
The next table summarizes the results:
<br>
[[Image:event 3.png|center|500px|]]
<br>


'''Event 4: <math>C</math> is Down 55 to 59'''<br>
[[Image:event 3.png|center|550px|link=]]
 
'''Event 4: <math>C\,\!</math> is Down 55 to 59'''
 
The next table summarizes the results:
The next table summarizes the results:
<br>
[[Image:event 4.png|center|500px|]]
<br>


'''Event 5: All Up 59 to 60'''<br>
[[Image:event 4.png|center|550px|link=]]
 
'''Event 5: All Up 59 to 60'''
 
The next table summarizes the results:
The next table summarizes the results:
<br>
[[Image:event 5.png|center|500px|]]
<br>


'''Event 6: <math>D</math> is Down 60 to 64'''<br>
[[Image:event 5.png|center|550px|link=]]
 
'''Event 6: <math>D\,\!</math> is Down 60 to 64'''<br>
The next table summarizes the results:
The next table summarizes the results:
<br>
[[Image:event 6.png|center|500px|]]
<br>


'''Event 7: All Up 64 to 65'''<br>
[[Image:event 6.png|center|550px|link=]]
 
'''Event 7: All Up 64 to 65'''
 
The next table summarizes the results:
The next table summarizes the results:
<br>
[[Image:event 7.png|center|500px|]]
<br>


'''Event 8:  A  is Down 65 to 69'''<br>
[[Image:event 7.png|center|550px|link=]]
 
'''Event 8:  A  is Down 65 to 69'''
 
Between 65 and 69,  A  fails.  This stops the flow of items in the system and provides an opportunity for the other blocks to process their backlogs.  As an example,  B  processes 40 items from the 60 items in its backlog.  Specifically:
Between 65 and 69,  A  fails.  This stops the flow of items in the system and provides an opportunity for the other blocks to process their backlogs.  As an example,  B  processes 40 items from the 60 items in its backlog.  Specifically:
<br>
[[Image:event 8.png|center|500px|]]
<br>


'''Event 9: All Up 69 to 70'''<br>
[[Image:event 8.png|center|550px|link=]]
 
'''Event 9: All Up 69 to 70'''
 
The next table summarizes the results:
The next table summarizes the results:
<br>
[[Image:event 9.png|center|500px|]]
<br>


'''Event 10: <math>E</math> is Down 60 to 64'''<br>
[[Image:event 9.png|center|550px|link=]]
From 70 to 74, <math>E</math> is down.  Because we specified that we will not send items to failed units,  B , <math>C</math> and <math>D</math> receive items from  A  but they do not process them, since processing would require that items be sent to <math>E</math> .  The items received by  B , <math>C</math> and <math>D</math> are added to their respective backlogs.  Furthermore, since they could have processed them if <math>E</math> had been up, all three blocks have an excess capacity for this period.  Specifically:
 
<br>
'''Event 10: <math>E\,\!</math> is Down 60 to 64'''
[[Image:event 10.png|center|500px|]]
 
<br>
From 70 to 74, <math>E\,\!</math> is down.  Because we specified that we will not send items to failed units,  B , <math>C\,\!</math> and <math>D\,\!</math> receive items from  A  but they do not process them, since processing would require that items be sent to <math>E\,\!</math>.  The items received by  B , <math>C\,\!</math> and <math>D\,\!</math> are added to their respective backlogs.  Furthermore, since they could have processed them if <math>E\,\!</math> had been up, all three blocks have an excess capacity for this period.  Specifically:
 
[[Image:event 10.png|center|550px|link=]]
 
It should be noted that if we had allowed items to be sent to failed blocks,  B , <math>C\,\!</math> and <math>D\,\!</math> would have processed the items received and the backlog would have been at <math>E\,\!</math>.  The rest of the time, all units are up.


It should be noted that if we had allowed items to be sent to failed blocks,  B ,  <math>C</math>  and  <math>D</math>  would have processed the items received and the backlog would have been at  <math>E</math> .  The rest of the time, all units are up.
'''Event 11: All Up 74 to 100'''
<br>
<br>


'''Event 11: All Up 74 to 100'''<br>
The next table summarizes the results:
The next table summarizes the results:
<br>
 
[[Image:event 11.png|center|500px|]]
[[Image:event 11.png|center|550px|link=]]
<br>


===Exploring the Results===
===Exploring the Results===
<br>
BlockSim provides all of these results via the Simulation Results Explorer.  The figure below shows the system throughput summary.
BlockSim provides all of these results via the Simulation Results Explorer.  The figure below shows the system throughput summary.
[[Image:9.10.gif|center|500px]]
[[Image:9.10.gif|center|600px|link=]]
<br>
 
System level results present the total system throughput, which is 5484 items in this example.  Additionally, the results include the uptime utilization of each component.
System level results present the total system throughput, which is 5484 items in this example.  Additionally, the results include the uptime utilization of each component.
The block level result summary, shown next, provides additional results for each item.   
The block level result summary, shown next, provides additional results for each item.   


[[Image:9.11.gif|center|600px]]
[[Image:9.11.gif|center|700px|link=]]


Finally, specific throughput results and metrics for each block are provided, as shown next.
Finally, specific throughput results and metrics for each block are provided, as shown next.


<br>
[[Image:9.12.gif|center|600px|link=]]
[[Image:9.12.gif|center|500px]]
<br>

Latest revision as of 21:03, 18 September 2023

BlockSim Examples Banner.png


New format available! This reference is now available in a new format that offers faster page load, improved display for calculations and images and more targeted search.

As of January 2024, this Reliawiki page will not continue to be updated. Please update all links and bookmarks to the latest references at BlockSim examples and BlockSim reference examples.




This example also appears in the System analysis reference.

Consider the simple system shown in the figure below, but with [math]\displaystyle{ E\,\! }[/math] operating.

The system diagram

In addition, consider the following deterministic failure and repair characteristics:

Throughput characteristics.png

Also:

  • Set all units to operate through system failure.
  • Do not add spare part pools or crews (use defaults).
  • Do not send items to failed units.
  • Use a weighted allocation scheme.

Event History: 0 to 100 Time Units

Then the system behavior from 0 to 100 time units is given in the table below. The system event history is as follows:

Event history.png

Once the system history has been established, we can examine the throughput behavior of this system from 0 to 100 by observing the sequence of events and their subsequent effect on system throughput.

System behavior.png

Event 1: B Fails at 50

• At 50, B fails.
• From 0 to 50, A processes [math]\displaystyle{ 50\cdot 60=3000\,\! }[/math] items.
• 500 are sent to B , 1000 to [math]\displaystyle{ C\,\! }[/math] and 1500 to [math]\displaystyle{ D\,\! }[/math]. There is no excess capacity at B , [math]\displaystyle{ C\,\! }[/math] or [math]\displaystyle{ D\,\! }[/math].
• B , [math]\displaystyle{ C\,\! }[/math] and [math]\displaystyle{ D\,\! }[/math] process and send 3000 items to [math]\displaystyle{ E\,\! }[/math]. Because the capacity of [math]\displaystyle{ E\,\! }[/math] is 3500, [math]\displaystyle{ E\,\! }[/math] now has an excess capacity of 500.
• The next table summarizes these results:
Event 1.png

Event 2: B is Down 50 to 54

• From 50 to 54, B is down.
• A processes 240 items and sends 96 to [math]\displaystyle{ C\,\! }[/math] and 144 to [math]\displaystyle{ D\,\! }[/math].
[math]\displaystyle{ D\,\! }[/math] and [math]\displaystyle{ C\,\! }[/math] can only process 80 and 120 respectively during this time. Thus, they get backlogs of 16 and 24 respectively.
• The 200 processed are sent to [math]\displaystyle{ E\,\! }[/math]. [math]\displaystyle{ E\,\! }[/math] has an excess capacity of 80 during this time period.
• The next table summarizes these results:
Table 2.png

Event 3: All Up 54 to 55

The next table summarizes the results:

Event 3.png

Event 4: [math]\displaystyle{ C\,\! }[/math] is Down 55 to 59

The next table summarizes the results:

Event 4.png

Event 5: All Up 59 to 60

The next table summarizes the results:

Event 5.png

Event 6: [math]\displaystyle{ D\,\! }[/math] is Down 60 to 64
The next table summarizes the results:

Event 6.png

Event 7: All Up 64 to 65

The next table summarizes the results:

Event 7.png

Event 8: A is Down 65 to 69

Between 65 and 69, A fails. This stops the flow of items in the system and provides an opportunity for the other blocks to process their backlogs. As an example, B processes 40 items from the 60 items in its backlog. Specifically:

Event 8.png

Event 9: All Up 69 to 70

The next table summarizes the results:

Event 9.png

Event 10: [math]\displaystyle{ E\,\! }[/math] is Down 60 to 64

From 70 to 74, [math]\displaystyle{ E\,\! }[/math] is down. Because we specified that we will not send items to failed units, B , [math]\displaystyle{ C\,\! }[/math] and [math]\displaystyle{ D\,\! }[/math] receive items from A but they do not process them, since processing would require that items be sent to [math]\displaystyle{ E\,\! }[/math]. The items received by B , [math]\displaystyle{ C\,\! }[/math] and [math]\displaystyle{ D\,\! }[/math] are added to their respective backlogs. Furthermore, since they could have processed them if [math]\displaystyle{ E\,\! }[/math] had been up, all three blocks have an excess capacity for this period. Specifically:

Event 10.png

It should be noted that if we had allowed items to be sent to failed blocks, B , [math]\displaystyle{ C\,\! }[/math] and [math]\displaystyle{ D\,\! }[/math] would have processed the items received and the backlog would have been at [math]\displaystyle{ E\,\! }[/math]. The rest of the time, all units are up.

Event 11: All Up 74 to 100

The next table summarizes the results:

Event 11.png

Exploring the Results

BlockSim provides all of these results via the Simulation Results Explorer. The figure below shows the system throughput summary.

9.10.gif

System level results present the total system throughput, which is 5484 items in this example. Additionally, the results include the uptime utilization of each component. The block level result summary, shown next, provides additional results for each item.

9.11.gif

Finally, specific throughput results and metrics for each block are provided, as shown next.

9.12.gif