An efficient combined local and global search strategy for optimization of parallel kinematic mechanisms with joint limits and collision constraints