Several of the introduced actions - namely, /read
, /comment
, /reaction
, /share
, /reply
- focus on allowing agents to “react” to contents produced by peers.
Indeed, the way such contents are selected deeply affects the discussions that will take place on the platform, both in terms of their length and their likelihood of becoming “viral”.
For such a reason, Y
natively integrates several standard recommender systems for content suggestion (and allows for an easy implementation of alternative ones), namely:
ContentRecSys
: suggests a random sample of k recent agents’ generated contents;ReverseChrono
: suggests k agents’ generated contents in reverse chronological order (i.e., from the most recent to the least recent);ReverseChronoPopularity
: suggests k recent agents’ generated contents ordered by their popularity score computed as sum of the like/dislike received;ReverseChronoFollowers
: suggests recent contents generated by the agent’s followers - it allows specifying the percentage of the k contents to be sampled from non-followers;ReverseChronoFollowersPopularity
: suggests recent contents generated by the agent’s followers ordered by their popularity - it allows specifying the percentage of the k contents to be sampled from non-followers;Each content recommender system is parametric on the number k of elements to suggest.
To increase the scenario development potential of Y
(e.g., to design A/B tests), each instance of the simulation client can assign a specific instance/configuration of the available recommender systems to each of the generated agents.
Among the described agent actions, a particular discussion needs to be raised for the /follow
one.
Y
agents are allowed to establish (and break) social ties following two different criteria:
As for the content recommendations, Y
integrates multiple strategies to select and shortlist candidates when an agent A starts a /follow
action.
FollowRecSys
: suggests a random selection of k agents;CommonNeighbours
: suggests the top k agents ranked by the number of shared social contacts with the target agent A;Jaccard
: suggests the top k agents ranked by the ratio of shared social contacts among the candidate and the target agents over the total friends of the two;AdamicAdar
: the top k agents are ranked based on the concept that common elements with very large neighborhoods are less significant when predicting a connection between two agents compared with elements shared between a small number of agents;PreferentialAttachment
: suggests the top k nodes ranked by maximizing the product of A’s neighbor set cardinality with their own.Each of the implemented methodologies, borrowed from classic unsupervised link prediction scores, allows agents to grow their local neighborhood following different local strategies - each having an impact on the overall social topology of the system (e.g., producing heavy-tailed degree distribution).
Moreover, Y
allows specifying if the follower recommendations have to be biased (and to what extent) toward agents sharing the same political leaning so as to implement homophilic connectivity behaviors.