Updated recommend algorithm