在RFC5104的3.5.4.2节中,导出了一组导出一组线的边界集的算法。基本上每条线的形式为y = mx + b,目的是找到识别凸包的交叉点(相当于确定哪些接收器与RTP媒体会话中的比特率自适应相关)。以下观察来自RFC
这些观察结果导致了在处理时的结论 TMMBR元组选择初始边界集,应该排序和
按增加开销的顺序处理元组。一旦一个 特定元组已被添加到边界集中,所有元组都不是 已经选择并且开销较低可以消除,因为 边界多边形的下一侧必须更陡峭(即, 相应的TMMBR必须具有比最新添加的更高的开销 元组。
我不认为这是正确的。假设您有一行,例如RFC的图1中标有符号'a'的行。可以绘制具有较大斜率的线,例如用符号'b'表示的线,该线从'a'线下方的Y轴开始。换句话说,如果线'b'在Y轴上具有较低的截距,则应首先考虑线'b'。但如果这是真的,那么算法的其余部分就不起作用。
答案 0 :(得分:0)
我认为这里的关键,以及贪婪方法解决问题的原因,实际上是排序顺序。虽然您的直观声明是正确的(也就是说,存在的行段会使此解决方案的证明无效),但在某种情况下,它也可以保证不存在否则会有问题。
维基百科有一个great set of references on solutions to this problem。对于问题及其异构体的更优雅,封闭形式的解决方案,请考虑在http://cs.stackexchange.com或http://math.stackexchange.com上更抽象地询问此问题的更精细点。
祝福RTP改造以满足您的需求。