I think the closest thing to a good solution would be to make commendations more valuable. An algorithm will never be able to accurately determine how valuable someone was to a group, but at least with commendations each player can choose who they personally think was most valuable. As it stands though, commendations aren't worth much. The rewards are all in all just ugly versions of things we already have access to.