A method for scheduling transmissions to a plurality of users in a communication network determines a satisfaction metric and a dissatisfaction metric for each user in a given timeslot that is to be used for a next scheduled transmission to one of the users. Each user is assigned a weight based on a value of at least one of the user's satisfaction metric, the user's dissatisfaction metric and a rate requested by the user. The use having the highest weight is selected to be served the next scheduled transmission in the given timeslot.