Class ProportionThresholdModelProtocol<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.ProportionThresholdModelProtocol<U,​I,​F>
Type Parameters:
U - Type of the users.
I - Type of the information pieces.
F - Type of the parameters.

public class ProportionThresholdModelProtocol<U extends java.io.Serializable,​I extends java.io.Serializable,​F>
extends Protocol<U,​I,​F>
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 proportion of the neighbors that has propagated the information to him. If this proportion exceeds a threshold, 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

    • ProportionThresholdModelProtocol

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