I agree with you that this is not going to be quick/easy to solve and that beta testing several alternatives is a very good approach. Getting the algorithm right is far more of a user experience issue than a programming issue. Right now, everyone is tossing out some simple concepts, but in the end this will need far more of a complex multi-dimensional, logarithmic ranking to get it right.