ELEG 820

Network Optimization

Homework 2

Network Capacity and the Conflict Graph

Getting started

  1. Make a directory called UDelModels.
  2. Go to http://UDelModels.eecis.udel.edu
  3. Go to the download page.
  4. Login
  5. Go to the “Data (Propagation, Maps, Traces)” page.
  6. Go to the most recent version of released cities.
  7. Expand Realistic Cities, expand Chicago9Blk, expand Experiments, expand JustOutdoorBasestations-0Peds)Cars, expand Trial1.
  8. Select “MatlabData.tar.gz” to download the file named “JustOutdoorBaseStations-0Peds0Cars_Trial1_MatlabDataR.tar.gz” to the DelModels directory that you made.
  9. Unzip the file you just downloaded.
  10. When decompressing, the file is placed directory UDelModels/ReleasedCities/RealisticCities/Chicago9Blk/Experiments/JustOutdoorBaseStations-0Peds0Cars/Trial1/MatlabData. Make a note of the full path.
  11. Next, download the Matlab files, ComputeCapacity.zip.
  12. Unzip this file into the UDelModels/Tools/ComputeCapacity (you will have to make this directory).

Running ComputeCapacity

  1. Open Matlab
  2. Open the Matlab editor (e.g., type edit at the Matlab command prompt).
  3. Open the file MakeSampleTop.m in the Matlab editor.
  4. 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.
  5. In the Matlab editor, open ComputeCapacity.m
  6. Run ComputeCapacity (e.g., press F5 from the editor).
  7. Two plots should be produced. One shows the topology and one shows the conflict graph.
  8. Rerunning ComputeCapacity makes a new topology, conflict graph, and computes capacity.
  9. 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

  1. 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.
  2. Do step 1 for a few different graphs (i.e., cases where the conflict graph has different structure).

The Conflict Graph – More Homework Problems

  1. The conflict graph is constructed in MakeConflictGraph.m
  2. 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:
    1. 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.
      1. Implement the SNIR test for conflict.
      2. Show two topologies, conflict graphs, along with channel losses for each link and verify that the conflict graph is correct.
      3. 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.
    2. Two-way communication: In some case (e.g., 802.11), communication across a link requires two-way communication.
      1. Implement a two-way SNIR-based conflict graph.
      2. Show two topologies, conflict graphs, along with channel losses for each link and verify that the conflict graph is correct.
      3. 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.
    3. (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.
      1. Implement a two-way SNIR-based conflict graph.
      2. Show two topologies, conflict graphs, along with channel losses for each link and verify that the conflict graph is correct.

Capacity – More Homework Problems

  1. Verify that the capacity computation is correct. Show this with a simple example topology.
  2. 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

  1. 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.
  2. 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.”