Write a program SIM (meeting the usual requirements) that implements the Monte Carlo simulation for Stochastic Area Networks in section 2.4.4 of the text.

Input & Output

Your SIM program will take several arguments:

Argument

Value

1

File of $Uniform(0,1)$ values; use one of these if you like

2

Number of iterations to run ($N$)

3

A text file describing the SAN (details below)

Your program should produce output such as (compared to the book's table on page 83, we simply displaying the $\pi_k$ and $\hat{p}_a(\pi_k)$ columns):

OUTPUT    :a1/2,a2/3,a3/4,a4/6:     0.5726
OUTPUT    :a1/3,a3/6:             0.0181
OUTPUT    :a1/2,a2/5,a5/6:         0.0015
OUTPUT    :a1/2,a2/3,a3/6:         0.0945
OUTPUT    :a1/4,a4/6:              0.1944
OUTPUT    :a1/3,a3/4,a4/6:         0.1189

Note that the there is no specific order to the output,1 but you must provide an entry for all possible paths. However, the paths should be formatted without any intervening white space, beware:

OUTPUT    :a1/2, a2/3, a3/4, a4/6:  0.5726

is no good

The value provided for each path is the critical path point estimate described in the book.

SAN Description Files

Consider the following network:

network-example.svg

this would be represented as a simple text file:

1 2 3
2 3 5
1 4 6
1 3 2
4 3 1.5
4 5 6
3 5 4

Per row, the first term is the source node, the second term is the destination node, and the third term is the upper bound for a $Uniform(a,b)$ distribution. For instance, the distribution for the a13 arc should be $Uniform(0,2)$. The largest numbered node in the second column (over all the nodes in the network) may always be considered the terminal node and node 1 will always be the single source node of the network.

Submit Your Work

Log into the course website and submit your project archive file for grading.

Rubric

TBD :(

  1. Because we have sort -n -k2 at our disposal (1)