Class CountThresholdModelProtocol<U extends java.io.Serializable,​I extends java.io.Serializable,​F>

java.lang.Object
es.uam.eps.ir.relison.diffusion.protocols.Protocol<U,​I,​F>
es.uam.eps.ir.relison.diffusion.protocols.CountThresholdModelProtocol<U,​I,​F>
Type Parameters:
U - type of the users.
I - type of the information pieces.
F - type of the user and information pieces features.

public class CountThresholdModelProtocol<U extends java.io.Serializable,​I extends java.io.Serializable,​F>
extends Protocol<U,​I,​F>
Count threshold model protocol.
Main characteristics
  • Selection mechanism: Each user takes a fixed number of information pieces from his own list. In the case of the received list, each piece of information will be propagated depending on the number of the neighbors that have propagated the information to him. If this proportion exceeds a number (or there are not enough neighbors), then, the information will be propagated.
  • Expiration mechanism: In this case, information pieces never expire: they will not be discarded.
  • Update mechanism: Since information pieces remain "in the memory of the users" once they are received, if a piece is received again, the list of users will be updated to contain the whole lot of users that have propagated the piece to the corresponding user
  • Propagation mechanism: In order to maximize the spreading, the information reaches all the followers of the user that propagates the information
  • Sight mechanism: All users see all the received information pieces.
  • Constructor Details

    • CountThresholdModelProtocol

      public CountThresholdModelProtocol​(int numOwn, int threshold)
      Constructor.
      Parameters:
      numOwn - number of own pieces to propagate each iteration.
      threshold - threshold that has to be surpassed.