1. A method for selecting one or more matching end users for an end user to be matched on an online social platform where end users participate in different forms of electronic communications with varying levels of engagement with other end users, comprising: determining a first set of end user(s) who have participated in a first form of electronic communication with the end user to be matched; determining a second set of end user(s) who have participated in the first form of electronic communication with one or more end users in the first set of end users, the second set of end users being end users who are similar to the end user being matched; determining a third set of end user(s) who have participated in the first form of electronic communication with one or more end users in the second set of end users; computing a score value for an end user in the third set of end users based on a sum of products, each product is a product of a coefficient and a variable; wherein the coefficients correspond to effects of the variables on the score value; wherein the variables used in computing the score value for a particular end user comprises: a triangulation variable based on the number of end users(s) in the second set of end users with whom the particular end user has participated in the first form of electronic communication; and one or more search criteria variables based on whether the particular end user has user profile attributes which meets the search criteria of the end user to be matched; and selecting the one or more matching end users based on the score values computed for the end users in the third set of end user(s).