Finished.

This commit is contained in:
Filipe Rodrigues 2024-01-06 16:44:30 +00:00
parent 3d8b2605fd
commit c466839a0b
Signed by: zenithsiz
SSH Key Fingerprint: SHA256:Mb5ppb3Sh7IarBO/sBTXLHbYEOz37hJAlslLQPPAPaU
10 changed files with 19 additions and 13 deletions

View File

@ -4,3 +4,5 @@
text(size: 0.8em, raw(read("/code/2.R"), lang: "R", block: true)),
caption: "Code used for exercise 2",
)
#pagebreak()

View File

@ -6,6 +6,8 @@
caption: [Implementation of `GreedyRandomized`],
)
#pagebreak()
==== c.
#code_figure(
text(size: 0.8em, raw(read("/code/4c.R"), lang: "R", block: true)),

View File

@ -4,3 +4,5 @@
text(size: 0.8em, raw(read("/code/5.R"), lang: "R", block: true)),
caption: [Code used for exercise 5],
)
#pagebreak()

View File

@ -56,7 +56,7 @@
#indent_par[In addition, our overall objective is to minimize $r$.]
#indent_par[For both of the following cases, the code we have used is presented in the appendix.]
#indent_par[For both of the following cases, the code we have used is presented in the appendix in code 1.]
==== a. Bifurcated routing

View File

@ -2,7 +2,7 @@
#indent_par[In order to optimize the maximum link load, we've used the `lpSolve` package from `R`.]
#indent_par[Since we're using the same network and flows as in exercise 1, the routes specified in table 1 stay the same as well]
#indent_par[Since we're using the same network and flows as in exercise 1, the routes specified in table 1 stay the same as well.]
#indent_par[We define additional variables to determine the number of circuits for each link, named $y_"ab"$. We also remove the variable $r$, since our objective is now to minimize the overall cost, which only depends on the $y_"ab"$ variables and other constants.]
@ -37,7 +37,7 @@
#indent_par[And finally, our overall objective is to minimize $"price" dot (y_12 + y_13 + y_23 + y_24 + y_34)$, where $"price"$ is the price for each module.]
#indent_par[For both of the following cases, the code we have used is presented in the appendix.]
#indent_par[For both of the following cases, the code we have used is presented in the appendix in code 2.]
#pagebreak()

View File

@ -2,7 +2,7 @@
#indent_par[We've resorted to the node-link routing formulation to determine the shortest path.]
#indent_par[Since we're using the same network and flows as in exercise 1, the routes specified in table 1 stay the same as well]
#indent_par[Since we're using the same network and flows as in exercise 1, the routes specified in table 1 stay the same as well.]
#indent_par[Similarly to the previous 2 exercise, we define the variables $x_"ab"$, where $a -> b$ is a link, as the ratio of traffic passing through that link.]
@ -29,7 +29,7 @@ $ sum_i c_"ab" dot x_"ab" $
#indent_par[Where $c_"ab"$ is the cost of the $a -> b$ link.]
#indent_par[The code we have used to calculate this is presented in the appendix.]
#indent_par[The code we have used to calculate this is presented in the appendix in code 3.]
#indent_par[We achieve the following results in table 9:]
@ -49,6 +49,6 @@ $ sum_i c_"ab" dot x_"ab" $
caption: [Solution]
)
#indent_par[The total cost ends end at 3. We conclude that the best solution is the route $1 -> 2 -> 3 -> 4$, with a cost of 3.]
#indent_par[The total cost ends up at 3. We conclude that the best solution is the route $1 -> 2 -> 3 -> 4$, with a cost of 3.]
#pagebreak()

View File

@ -32,7 +32,7 @@
#indent_par[In detail, we store a matrix `λ` with the installed traffic through each node, so we may compute the link delays using it. We update this matrix using delays calculated from `Tr` matrix and the speed of light.]
#indent_par[This function is present in the appendix.]
#indent_par[This function is present in the appendix in code 4.]
#indent_par[After running the provided script `lsrouteB.R`, we obtained the following results for a kilometric solution in table 11:]
@ -58,7 +58,7 @@
#indent_par[In detail, we normalize the matrix to the $[0.0, 1.0]$ interval and added it to the `Mu` matrix using `Mu = (1 + extra_capacity) * 1e9 / 8e3`. This makes it so that, as specified, we don't remove any capacity and only add it where necessary. However, this lead to a maximum link load of higher than 70%. To fix this, we multiplied the original by the lowest factor that would yield a < 70% maximum link load.]
#indent_par[The code used for this, which includes the extra capacity, is present in the appendix.]
#indent_par[The code used for this, which includes the extra capacity, is present in the appendix in code 5.]
#indent_par[After running our solution, we obtained the following solution in table 12:]

View File

@ -6,10 +6,10 @@
#indent_par[First, we declared the following variables:]
- Number of servers, $z_i$, in node $i$.
- Replica, $g_i^j$, has node $i$ be served by node $j$
- Replica, $g_i^j$, has node $i$ be served by node $j$.
#indent_par[Afterwards, we can construct the following equations:]
#indent_par[Afterwards, we can construct the following equations, in table 13:]
#figure(
pad(1em, table(
@ -31,7 +31,7 @@ $ sum_i,j g_i^j dot C_i^j $
#indent_par[Where $C_i^j$ is the delay between nodes $i$ and $j$.]
#indent_par[The code used to implement this is present in the appendix.]
#indent_par[The code used to implement this is present in the appendix in code 6.]
#pagebreak()

View File

@ -7,7 +7,7 @@
caption: [Network diagram]
)
#indent_par[The code used to implement this is present in the appendix.]
#indent_par[The code used to implement this is present in the appendix in code 7.]
#indent_par[From this, we can see that 12 is the optimal number of circuits to maximize the net revenue.]

View File

@ -1,4 +1,4 @@
#let title = "Lab report 3 - TODO"
#let title = "Lab report 3 - Optimization"
#let degree = "Master's Programme in Communication Networks Engineering"
#let course = "Performance Evaluation and Dimensioning of Networks and Systems"