A non-transitory computer storage medium encoded with a computer program, the program comprising instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:
- receiving aggregate user data, the aggregate user data corresponding to respective response rates of one or more answering users responding to requests;
- processing the aggregate user data to generate one or more analytical models, each answering user of the one or more answering users associated with one particular analytical model of the one or more analytical models, each of the one or more analytical models providing one or more probabilities that the answering user associated with the analytical model will respond to a request;
- receiving the request;
- determining a time corresponding to the request, the time indicating a time of day at which the request was issued;
- processing the one or more analytical models, the processing including:
- comparing, for each answering user, the time of day at which the request was issued with the analytical model associated with the answering user,
- based on the comparing, identifying, for each answering user, a particular probability associated with the time of day at which the request was issued,
- identifying a subset of the one or more answering users based on the particular probability that is associated with each answering user for the time of day at which the request was issued;
- and
- transmitting the request to each answering user of the sub-set of the one or more answering users.