0

In section 3.5.4.2 of RFC5104, an algorithm to derive the bounding set of a set of lines is derived. Basically each line is of the form y=mx+b, and the objective is to find the points of intersections that identify the convex hull (equivalent to determine which receivers are relevant for bitrate adaptation in RTP media sessions). The following observation is taken from the RFC

These observations lead to the conclusion that when processing the TMMBR tuples to select the initial bounding set, one should sort and
process the tuples by order of increasing overhead. Once a
particular tuple has been added to the bounding set, all tuples not
already selected and having lower overhead can be eliminated, because the next side of the bounding polygon has to be steeper (i.e., the
corresponding TMMBR must have higher overhead) than the latest added
tuple.

I don't think this is correct. Assume you have a line, such as the one indicated in Figure 1 of the RFC with symbol 'a'. It is possible to draw a line with larger slope, such as the line indicated with symbol 'b' that starts on the Y-axis below line 'a'. In other words, if line 'b' has lower intercept on the Y-axis, you should consider line 'b' first. But if this is true, the rest of the algorithm does not work.

Community
  • 1
  • 1
Bob
  • 10,741
  • 27
  • 89
  • 143

1 Answers1

0

I believe the key here, and indeed the reason why the greedy approach works at all to solve the problem, is the sort ordering. While your intuitive claim is correct (that is, that a line segment exists that invalidates the proof of this solution), it's also guaranteed not to be present in a situation in which it would otherwise be problematic.

Wikipedia has a great set of references on solutions to this problem. For a more elegant, closed-form solution to the problem and its isoforms, consider asking about the finer points of this question more abstractly on http://cs.stackexchange.com or http://math.stackexchange.com.

Best of luck with retrofitting RTP to meet your needs.

MrGomez
  • 23,788
  • 45
  • 72
  • Hi, the algorithm that follows that paragraph seems to be ok, just double checked. I think that the observation above is just written with lack of precision. In fact, in the algorithm, they do consider the case I mentioned. – Bob Apr 17 '12 at 21:04
  • @Bob Good. I'm happy to hear it will meet your needs! :) – MrGomez Apr 17 '12 at 21:05