有谁知道与选择项目相关的算法或数据结构,它们被选择的概率与某些附加值成正比?换句话说:http ://en.wikipedia.org/wiki/Sampling_%28statistics%29#Probability_proportional_to_size_sampling
这里的上下文是一个去中心化的信誉系统,因此附加价值是一个用户对另一个用户的信任价值。在这个系统中,所有节点要么作为完全信任的朋友开始,要么作为完全不信任的未知节点开始。这在大型 P2P 网络中本身并没有用,因为节点数量会比您拥有的朋友多得多,并且您需要知道在不是您直接朋友的大量用户中信任谁,所以我实现了一个动态信任系统,其中未知数可以通过朋友的朋友关系获得信任。
每隔一段时间,每个用户都会选择一个固定数量的目标节点(为了速度和带宽),以根据另一个选定的固定数量的中间节点对他们的信任程度来重新计算他们的信任。选择目标节点进行重新计算的概率将与其当前信任成反比,因此未知数很有可能变得更好。中间节点将以相同的方式被选择,除了中间节点的选择概率与其当前信任成正比。
我自己编写了一个简单的解决方案,但是速度很慢,我想找到一个 C++ 库来为我处理这方面的问题。我当然已经完成了自己的搜索,并且我设法找到了我现在正在挖掘的 TRSL。由于这似乎是一个相当简单且可能很常见的问题,我希望有更多的 C++ 库可供我使用,所以我提出这个问题是希望这里有人可以对此有所了解。