MDX Query for RANK regardless of hierarchy
Please explain in more detail what you meany by "groupers"?

For instance, if you want to rank a member within a set, you need to tell SSAS what the set is that you are ranking within. 

RANK( Tuple, Set, Measure to rank by)


So

RANK( Machines.Machines.CurrentMember, Machines.Machines.AllMembers, Measures.Efficiency)


Now, I think that what you are trying to do is have that all members be dynamic?

The question is "How would you both specify the current member and the set?"

And here's a kicker: the frontend tool you're using will make a difference here as well