A Framework for Optimal Ankle Design of Humanoid Robots