ELEG 820
Network Optimization
Homework 2
Network Capacity and the Conflict Graph
Getting started
- Make a
directory called UDelModels.
- Go to http://UDelModels.eecis.udel.edu
- Go to
the download page.
- Login
- Go to
the “Data (Propagation, Maps, Traces)” page.
- Go to
the most recent version of released cities.
- Expand
Realistic Cities, expand Chicago9Blk, expand Experiments, expand
JustOutdoorBasestations-0Peds)Cars, expand
Trial1.
- Select
“MatlabData.tar.gz” to download the file named
“JustOutdoorBaseStations-0Peds0Cars_Trial1_MatlabDataR.tar.gz” to the DelModels directory that you made.
- Unzip
the file you just downloaded.
- When
decompressing, the file is placed directory
UDelModels/ReleasedCities/RealisticCities/Chicago9Blk/Experiments/JustOutdoorBaseStations-0Peds0Cars/Trial1/MatlabData.
Make a note of the full path.
- Next,
download the Matlab files, ComputeCapacity.zip.
- Unzip
this file into the UDelModels/Tools/ComputeCapacity (you will have to make this directory).
Running ComputeCapacity
- Open Matlab
- Open
the Matlab editor (e.g., type edit at the Matlab command prompt).
- Open
the file MakeSampleTop.m in the Matlab editor.
- This
file has comments and, near line 30, a variable named “BasePath”
is defined and must be changed to full path of the Matlab data file that was downloaded above.
- In the Matlab editor, open ComputeCapacity.m
- Run ComputeCapacity (e.g., press F5 from the editor).
- Two
plots should be produced. One shows the topology and one shows the
conflict graph.
- Rerunning ComputeCapacity makes a new topology, conflict
graph, and computes capacity.
- Note:
it is sometime useful to rerun ConputeCapacity without changing the topology. To do this, comment out the line “MakeSampleTop,” i.e., replace “MakeSampleTop”
with “% MakeSampleTop.”
Homework Problems
- Print
a conflict graph and list the ChannelLosses of
the between all the transmitters and receivers. Use this table to verify
that the conflict graph is correct.
- Do
step 1 for a few different graphs (i.e., cases where the conflict graph
has different structure).
The Conflict Graph –
More Homework Problems
- The
conflict graph is constructed in MakeConflictGraph.m
- In the
current version two links are in conflict if the channel loss from the
transmitter of one of the links to the receiver of the other link is larger
than THRESH + MinSNR. We will call this type of
conflict, THRESH+MinSNR conflict. Change the conflict
graph in the following ways:
- SNIR:
Links A and B are in conflict if the channel loss from A’s transmitters
to B’s receiver is larger than MinSNR above the
channel loss from B’s transmitter to B’ receiver, or vice versa.
- Implement the SNIR test for conflict.
- Show two topologies, conflict graphs, along with
channel losses for each link and verify that the conflict graph is correct.
- Find a topology where the SNIR-based conflict graph has
some links that are not in conflict while if THRESH+MinSNR conflict does result in the links being in conflict.
- Two-way
communication: In some case (e.g., 802.11), communication across a link
requires two-way communication.
- Implement a two-way SNIR-based conflict graph.
- Show two topologies, conflict graphs, along with
channel losses for each link and verify that the conflict graph is correct.
- Find a topology where the two-SNIR-based conflict graph
includes links in conflict that are not included in the simple SNIR-based
conflict graph.
- (Extra
Credit) Extended Conflict Graph: Each link can transmit at two bit-rates.
It can transmit at 1 bps if the SNIR>3 dB and 10 bps if the SNIR>10
dB. Note that in this type of conflict graph each link is represented
with 2 vertices, one for 1 bps and one for 10 bps. Due to the SNIR
constraints, while these vertices represent the same link, they are in
conflict with different links.
- Implement a two-way SNIR-based conflict graph.
- Show two topologies, conflict graphs, along with
channel losses for each link and verify that the conflict graph is correct.
Capacity – More Homework
Problems
- Verify
that the capacity computation is correct. Show this with a simple example
topology.
- Compare
the capacity for the different types of conflict graphs made above. That
is, for each topology, make the three conflict graphs (or four conflict
graphs, if the extra credit conflict graph is made). For each conflict
graph, for a particular topology, compute the capacity. Make a table to
compare the capacities for 5 topologies.
Independent Sets –
Extra Credit
- For a
particular type of conflict graph, explore the impact of the number of
elements in the set of independent sets to the computed capacity. That is,
take a fixed topology and a fixed conflict graph. Generate N independent
sets and then compute the capacity. Do this for several N’s and make a
plot of the computed capacity as a function of N.
- Do the
above a few topologies. Also, explore larger topologies. A large topology
can be generated by increasing “MAX_NUM_HOPS” in the file “MakeSampleTop.m.”