Utilitarian principles for imperfect agents