Member suggestions based on profile fields

I am about to start working on a member directory loop and wanted some guidance.

I would like to show a list of suggested members on a page based on xprofile data.

I have location (check box), zip code, university, company, industry.

I'll keep it simple for now and show suggestions based on university (if blank go to location, if blank go to industry, if blank, go to company, if no match found, show random 10 members).

What's the best way to go about this?

Thank you,
Giovanni